1. 程式人生 > 程式設計 >解決Android 原始碼編譯錯誤的問題

解決Android 原始碼編譯錯誤的問題

如下所示:

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
Out of memory error (version 1.2-a26 'Carnac' (291201 fcd657165d2fd6dcf1bf4c3002c9c8f75383e815 by [email protected])).

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.

在檔案/prebuilts/sdk/tools/jack-admin中修正-Xmx引數。

1、修改變數JACK_SERVER_VM_ARGUMENTS,新增引數 -Xmx2048M

JACK_SERVER_VM_ARGUMENTS="${JACK_SERVER_VM_ARGUMENTS:=-Dfile.encoding=UTF-8 -XX:+TieredCompilation -mx2048M}"

2、進一步修正重啟引數(該步驟可以省略)

找到jack-admin中的start-server語句,直接在裡面增加:

start-server)

isServerRunning

RUNNING=$?

if [ "$RUNNING" = 0 ]; then

echo "Server is already running"

else

echo "before to start-server,JACK_SERVER_VM_ARGUMENTS=" $JACK_SERVER_VM_ARGUMENTS

JACK_SERVER_COMMAND="java -Djava.io.tmpdir=$TMPDIR $JACK_SERVER_VM_ARGUMENTS-Xmx2048M -cp $LAUNCHER_JAR $LAUNCHER_NAME"

echo "Launching Jack server" $JACK_SERVER_COMMAND

(

補充知識:編譯android 7.0 出現Try increasing heap size with java option '-Xmx'錯誤解決方案

出現這個錯誤是由於電腦記憶體不足,在命令列分別執行以下三條語句,然後繼續編譯

export JACK_SERVER_VM_ARGUMENTS="-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx4g"

./prebuilts/sdk/tools/jack-admin kill-server
./prebuilts/sdk/tools/jack-admin start-server

以上這篇解決Android 原始碼編譯錯誤的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。