2016-03-01 58 views
0

我试着编译使用Appcelerator的apk,但我得到这个错误。如何解决它。编译Appcelerator Android应用程序时如何解决java.lang.OutOfMemoryError?

目前我使用钛SDK:5.2.0.GA

>Error: 
    >ERROR : Failed to run dexer: 
    >ERROR : UNEXPECTED TOP-LEVEL ERROR: 
    >ERROR : java.lang.OutOfMemoryError: Java heap space 

其他错误

[ERROR] : Failed to run dexer: [ERROR] :
[ERROR] : UNEXPECTED TOP-LEVEL ERROR: [ERROR] : java.lang.OutOfMemoryError: Java heap space [ERROR] : at java.util.Arrays.copyOf(Arrays.java:2271) [ERROR] : at java.io.ByteArrayOutputStream.toByteArray(ByteArrayOutputStream.java:191) [ERROR] : at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:279) [ERROR] : at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:166) [ERROR] : at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144) [ERROR] : at com.android.dx.command.dexer.Main.processOne(Main.java:672) [ERROR] : at com.android.dx.command.dexer.Main.processAllFiles(Main.java:574) [ERROR] : at com.android.dx.command.dexer.Main.runMonoDex(Main.java:311) [ERROR] : at com.android.dx.command.dexer.Main.run(Main.java:277) [ERROR] : at com.android.dx.command.dexer.Main.main(Main.java:245) [ERROR] : at com.android.dx.command.Main.main(Main.java:106)

嗨再次, 我从链接的解决方案,代码为:

<property name="android.javac.maxmemory" type="string">1024M</property> 
    <property name="android.dx.maxmemory" type="string">2048M</property> 

谢谢

+0

提及你试图解决这个问题。看起来像内存不足的例外。 – Raviprakash

+0

是的。我已经找到了解决这个问题的方法。感谢您的反馈:) – afiz

+0

链接的解决方案:https://jira.appcelerator.org/browse/TIMOB-19315 – afiz

回答

0

你在代码中做错了什么。并设置较大的maxmemory或大堆大小不是正确的修复程序。这些解决方案不适用于所有设备和Android版本。你是请求更多的内存,但没有什么需要操作系统授予它给你的应用程序。

你有一个memory leak或者你只是不必要地使用内存创建对象的低效率的方式。重新检查你的应用的结构来优化它,而不是用清单设置来帮助它。

0

当为android构建时,Appcelerator无法处理太多的JavaScript文件。

我有128个控制器& 188个视图文件。我删除了所有未使用的文件。现在我有35个控制器& 56个视图文件,这个在android上成功构建。

相关问题