java - 构建 Froyo 失败 - make : *** [. ../classes.dex] 被杀死

标签 java android makefile

我正在尝试在运行 Ubuntu Netbook 10.04 的 Asus A3E 笔记本电脑(512MB 内存)上从源代码构建 Google 的 Android v2.2 (Froyo)。

我已按照 http://source.android.com/source/download.html 上的说明进行操作并使用以下命令将 java 设置为版本 5:

sudo update-java-alternatives -s java-1.5.0-sun
java -version gives me: 1.5.0_018 

从而允许 Android 的预构建检查工作。 我还设置了 ~/.bashrc 来导出 java 主目录并将其设置为 android java 主目录。我也有:

repo init -u git://android.git.kernel.org/platform/manifest.git -b froyo 
repo sync

然后我只是简单地:

make

这持续了大约一分钟,然后我在以下位置停顿了很长时间:

target Dex: core

然后:

make: *** [out/target/common/obj/JAVA_LIBRARIES/core_intermediates/classes.dex] Killed

我又回到了提示。 我怀疑这是一个内存问题,因为它会使我同时打开的任何浏览器实例崩溃。 有谁知道解决方案/解决方法或至少是开始调试的好途径。

干杯, 斯图

最佳答案

如果系统正在终止浏览器窗口,您可能会耗尽内存。/var/log/messages 或“dmesg”的输出可能有一些信息。

512MB RAM 不足以让“dx”处理 core.jar(或其老大哥 Framework.jar)。您可能需要添加额外的交换空间。检查“swapon -s”以查看当前配置的交换类型。您可以使用 mkswap 和 swapon 创建交换区域并开始使用它。您将需要一两千兆字节。 (如果你查看 build/core/definitions.mk,你可以看到 dx 被传递了 -JXmx1536M,即 Java VM 被赋予了 1.5GB 堆。)

添加交换应该能让你最终完成构建。如果你经常交换的话,速度会非常慢。您最好为笔记本电脑添加更多物理 RAM。

关于java - 构建 Froyo 失败 - make : *** [. ../classes.dex] 被杀死,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3344618/

相关文章:

java - 如何让我的 JOptionPane 对话框在 10 秒后消失

javascript - 从 Javascript 调用 jar 中定义的 java 类

java - 在 Java 中使用 Gson 从嵌套对象读取单个值

Java:返回对象的迭代方法

c++ - 从现有 cmake 应用程序导入的 Netbeans 项目无法在 Windows 上生成文件系统错误

java - Android webview进度条无论有没有网络都会持续加载

java - 如何在android中将图像从一个 Activity 发送到另一个 Activity

android - 不得将变量 ndk.dir 添加到 local.properties

android - 如何清理 AOSP 中的模块?

c++ - 我的 makefile 有什么问题?