[英]Gluon Mobile Not Being Able to Port to iOS
我正在研究此应用程序,但似乎无法将其移植到iOS。 尝试在iOS上构建应用程序时,我一遍又一遍地遇到OutOfMemory异常。
然后,我尝试构建一个基本的Gluon Mobile应用程序并将其移植到iOS,我得到了:
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:createDefaultIOSLauncher UP-TO-DATE
:compileIosJava UP-TO-DATE
:processIosResources UP-TO-DATE
:iosClasses UP-TO-DATE
:iosExtractNativeLibs UP-TO-DATE
:createIpa
RoboVM has detected that you are running on a slow HDD. Please consider mounting a RAM disk.
To create a 2GB RAM disk, run this in your terminal:
SIZE=2048 ; diskutil erasevolume HFS+ 'RoboVM RAM Disk' `hdiutil attach -nomount ram://$((SIZE * 2048))`
See http://docs.robovm.com/ for more info
RoboVM has detected that you are running on a slow HDD. Please consider mounting a RAM disk.
To create a 2GB RAM disk, run this in your terminal:
SIZE=2048 ; diskutil erasevolume HFS+ 'RoboVM RAM Disk' `hdiutil attach -nomount ram://$((SIZE * 2048))`
See http://docs.robovm.com/ for more info
Root pattern javax.annotations.**.* matches no classes
Root pattern javax.inject.**.* matches no classes
RoboVM has detected that you are running on a slow HDD. Please consider mounting a RAM disk.
To create a 2GB RAM disk, run this in your terminal:
SIZE=2048 ; diskutil erasevolume HFS+ 'RoboVM RAM Disk' `hdiutil attach -nomount ram://$((SIZE * 2048))`
See http://docs.robovm.com/ for more info
Root pattern javax.annotations.**.* matches no classes
Root pattern javax.inject.**.* matches no classes
Warning: javax.xml.bind.annotation.XmlRootElement is a phantom class!
Warning: java.nio.file.StandardOpenOption is a phantom class!
Warning: java.nio.file.FileSystem is a phantom class!
Warning: java.nio.file.OpenOption is a phantom class!
Warning: java.nio.file.FileSystems is a phantom class!
Warning: com.oracle.jrockit.jfr.TimedEvent is a phantom class!
Warning: com.oracle.jrockit.jfr.EventToken is a phantom class!
Warning: com.oracle.jrockit.jfr.ValueDefinition is a phantom class!
Warning: com.oracle.jrockit.jfr.EventDefinition is a phantom class!
Warning: com.oracle.jrockit.jfr.Producer is a phantom class!
Warning: com.oracle.jrockit.jfr.FlightRecorder is a phantom class!
Daemon stopping because JVM tenured space is exhausted
Daemon stopping because JVM tenured space is exhausted
我的IMac 在2.7GHz I5上运行8GB RAM。
我也尝试安装RoboVM RAM磁盘未成功。 请帮忙!
通常,iOS部署需要大量内存,并且默认情况下,将JVM堆的最大分配内存池增加到2 GB是一种很好的做法。
从IDE运行,您可以在Gradle首选项中设置此默认值。
例如,在NetBeans上,转到Preferences-> Miscellaneous-> Gradle,Scripts&Tasks,然后在Gradle JVM参数中添加-Xmx2048m
:
另一种选择是在gradle.properties
文件中设置gradle属性(在<user>/.gradle
下具有ANDROID_HOME属性的属性):
org.gradle.jvmargs=-Xmx2048m
该属性文件将应用于从IDE运行或从命令行运行,因此更合适。
发现内存不足错误的典型情况是第一次启动RoboVM编译器。 幸运的是,所有已编译的类都已缓存,因此重新启动任务只会恢复该过程。
另外,如果该过程失败,有时可以很方便地使用gradle --stop
和./gradlew --stop
停止所有gradle --stop
进程线程,然后重新启动任务。
如果该过程成功结束,即使有警告消息,也只需在您的iOS设备上检查该应用程序已安装并运行正常。 请注意,您也可能会发现内存问题,但这是一个不同的问题。
编辑
当执行长任务时,使用--info
查找有关该过程的更多信息总是很方便,并且输出更为详细。
另外,可以从控制台运行该过程(从NetBeans中,右键单击build.gradle文件,然后选择“工具”->“在终端中打开”)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.