Android7.0 编译问题

在尝试编译Android N时遇到了两个问题:一是警告生成,二是Jack Server的Java堆内存不足导致的错误。解决方案包括修改prebuilts/sdk/tools/jack-admin文件中的-Xmx参数为4096m,并在jack-admin的start-server命令中增加-Xmx4096m选项以增大Java堆内存。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


AndroidN编译需要用到java 1.8以上版本.

第一次出错:

1 warning generated.

[ 31% 10040/31772] Building with Jack: out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/with-local/classes.dex
FAILED: /bin/bash out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/with-local/classes.dex.rsp
GC overhead limit exceeded
Try increasing heap size with java option '-Xmx<size>'
Warning: This may have produced partial or corrupted output.

ninja: build stopped: subcommand failed.

第二次出错:

[  0% 42/36388] RenderScript: Gallery2 <= packages/apps/Gallery2/src/com/android/gallery3d/filtershow/filters/convolve3x3.rs packages/apps/Gallery2/src/com/android/gallery3d/filtershow/filters/grad.rs      packages/apps/Gallery2/src/com/android/gallery3d/filtershow/filters/grey.rs packages/apps/Gallery2/src/com/android/gallery3d/filtershow/filters/saturation.rs packages/apps/Gallery2/src/com/android/ga     llery3d/filtershow/filters/vignette.rs
2036 [  0% 43/36388] Building with Jack: out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/with-local/classes.dex
2037 FAILED: /bin/bash out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/with-local/classes.dex.rsp
2038 java.lang.AssertionError: java.util.zip.ZipException: duplicate entry: jayce/android/printservice/PrintService$1.jayce
2039     at com.android.sched.vfs.WriteZipFS$ZipEntryOutputStream.writeEntryIfNeeded(WriteZipFS.java:350)
2040     at com.android.sched.vfs.WriteZipFS$ZipEntryOutputStream.close(WriteZipFS.java:320)
...............

解决办法:

 1.在文件/prebuilts/sdk/tools/jack-admin中修正-Xmx参数(-Xmx:4096m).

  JACK_SERVER_VM_ARGUMENTS="${JACK_SERVER_VM_ARGUMENTS:=-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx:4096m}"
2.jack-admin中的start-server语句,直接在里面增加:

在start_server的case 下,

start-server)

..............

JACK_SERVER_COMMAND="java -XX:MaxJavaStackTraceDepth=-1 -Djava.io.tmpdir=$TMPDIR $JACK_SERVER_VM_ARGUMENTS -Xmx4096m -cp $LAUNCHER_JAR $LAUNCHER_NAME"



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值