0

我正在使用 Adob​​e AIR 创建一些 Flash 游戏。我尝试将它编译成 .ipa 文件(在 iPad 设备上运行)。

该项目不大,但也不小(它使用 6 个 swc 库和大量未预编译的代码)。我尝试使用以下两种方法将我的游戏与 Flash FDT 5.5 打包:

  • 快速 - 工作正常,但性能很糟糕;
  • 标准- 我的编译以以下错误结束:

包装失败!打包错误消息:在 adobe.abc.Algorithms$SetMap.get(Algorithms. java:225) 在 adobe.abc.Algorithms.addUses(Algorithms.java:164) 在 adobe.abc.Algorithms.findUses(Algorithms.java:186) 在 adobe.abc.GlobalOptimizer.cp(GlobalOptimizer.java:9381) 在adobe.abc.GlobalOptimizer.dce(GlobalOptimizer.java:9627) 在 adobe.abc.GlobalOptimizer.sccp(GlobalOptimizer.java:4638) 在 adobe.abc.GlobalOptimizer.optimize(GlobalOptimizer.java:3514) 在 adobe.abc.GlobalOptimizer .optimize(GlobalOptimizer.java:2215) 在 adobe.abc.LLVMEmitter.optimizeABCs(LLVMEmitter.java:527) 在 adobe.abc.LLVMEmitter.generateBitcode(LLVMEmitter.java:

我知道这是 Eclipse 开发的常见问题。我试图以标准方式解决这个问题 - >增加java堆大小。如您所见,我设置了 3072M 应该足够了。

当我尝试编译较小的项目时,它工作正常。我不知道现在该怎么办:(。有什么想法吗?

4

2 回答 2

1

经过深入调查,我找到了解决方案。这不是由于任何环境配置,但正如@Alan 所说,Adobe 的打包程序遇到了问题。正如我想的那样,它在“优化”阶段遇到了问题。

这是一个非常有用的论坛主题:http ://forums.adobe.com/message/4445973#4445973

我的项目使用的是 NAPE 物理引擎。正如我在那里发现的那样:http: //deltaluca.me.uk/forum/index.php/m/2148/0ce4c49cc2c79979154c56737d2978a4/人们遇到编译时间问题。在我的情况下,编译时间是无限的;),以java的内存不足异常结束。解决方案是使用最新的 NAPE 构建,作者对其进行了一些优化。这种“小型优化”使我的项目发挥了作用。

To sum up: if you have similiar problem, just check your code. Try to find some huge functions/methods, which Adobe's packager finds hard to optimalize.

于 2012-05-30T19:08:44.813 回答
0

-Xmx3072M不是有效的 Eclipse 参数。将您的“eclipse.ini”设置和其他 Java 设置恢复为默认值,它应该可以工作。您可能将其设置得太高,以至于 JVM 的其他部分内存不足。

从堆栈跟踪可以看出,这不是 Eclipse 或 FDT 问题。Adobe 的打包程序遇到了问题。如果默认设置仍然不起作用,请参阅一般情况下为 Java 提供更多内存。如果这不起作用,请慢慢增加 Eclipse 的内存以查看是否有效。

于 2012-05-24T14:15:52.480 回答