当前位置: 首页 > 知识库问答 >
问题:

代号一引擎盖下发生的事

施利
2023-03-14

我必须评估Codename One,但我找不到关于部署在底层是如何工作的以及最终结果是什么的信息。他们是否将我的Java代码交叉编译为类似于RoboVM的真实本机代码,他们是否使用类似于Gluon的JVM,或者他们有自己的JVM?

共有1个答案

袁卓
2023-03-14

你可以在这里看到我的答案,以获得更多的细节,但它的要点是我们与RoboVM有些不同。

我们将字节码转换为C,并使用Xcode将其编译为本机。因此,您得到了一个完全原生的应用程序,甚至可以获得源代码并自己编译。由于本机C/Objective-C代码是许多应用程序/游戏使用的官方支持的iOS路径,因此可以保证始终工作。

RoboVM是Java的LLVM前端。这是相当雄心勃勃的,苹果只是不正式支持。它在过去给他们创造了相当多的挑战性情况,例如RoboVM的一名员工解释了迁移到iOS9对他们来说有多难的帖子...最近的64位转换也是如此。

 类似资料:
  • 问题内容: 我一直在尝试React Hooks,它们似乎确实简化了诸如存储状态之类的事情。但是,他们似乎通过魔术来做很多事情,而我找不到关于它们实际工作方式的好文章。 看起来很神奇的第一件事是,每次调用setXXX方法时,调用诸如useState()之类的函数如何导致功能组件的重新渲染? 当功能组件甚至没有能力在Mount / Unmount上运行代码时,诸如useEffect()之类的东西如何伪

  • 我一直在尝试React钩子,它们似乎可以简化存储状态之类的事情。然而,他们似乎用魔法做了很多事情,我找不到一篇关于他们如何实际工作的好文章。 第一件看起来很神奇的事情是,调用像useState()这样的函数是如何在每次调用setXXX方法时导致函数组件的重新渲染的? 当功能组件甚至不具备在挂载/卸载上运行代码的能力时,像use效应()这样的东西是如何伪造组件的? useContext()实际上是如

  • 我目前正在用C#编写一个纯粹出于学术目的的JVM(也许将来会构建一个混合的.NET和Java/Scala应用程序)。 我编写了一个简单的JAVA类: 并将其编译为。当我使用我的反编译程序(我已经将其作为JVM的一部分编写)反编译它时,我看到这个方法的如下说明: 在常量池中查找索引处的常量时,我看到一个InvokeDynamic-Constant条目,其中包含以下数据: 我想这是有道理的(我更多的是

  • 问题内容: 在阅读了戴夫·切尼(Dave Cheney)关于Go的地图的博客文章之后,对我来说,还有几件事尚不清楚。 TLDR: 为什么它们无序? 实际值存储在哪里? 深入研究运行时程序包后,我发现基本的映射结构如下: -是存储区数组,其中索引是键的哈希值的低位,其中存储区为: ..好吧,这只是每个项目是键的哈希值的第一个字节的数组。键值对存储为(每个存储桶八对)。但是到底在哪里?考虑到映射可能包

  • 您都知道将依赖项放入pom.xml文件并运行“MVN clean Install”的过程。当这个命令运行时,依赖项的jar文件被下载到。m2存储库中。 当我们使用IntelliJ和run/debug配置窗口运行应用程序时,IntelliJ如何知道在哪里查找依赖项的jar文件?IntelliJ中的每个GUI操作实际上都取代了命令行操作。当我们单击“运行”按钮时,在“幕后”提交的命令行操作是什么。我相

  • 尝试在中使用分组,并且没有任何原因得到这些绑定错误(它们不属于我的代码,我也看不到处理它们的方法): System. Windows. Data错误:4:找不到引用“RelativeSource FindAncestor, AncestorType=”System. Windows. Control. DataGrid', AncestorLine=“1”的绑定源。Binding表达式:路径=区域