2016-01-02 29 views
5
****[ 35% 11837/33004] build out/target/common/obj/JAVA_LIBRARIES/sdk_v21_intermediates/classes.jack 
FAILED:/bin/bash -c
"
(mkdir -p out/target/common/obj/JAVA_LIBRARIES/sdk_v21_intermediates/)
&& (java -Xmx3500m -jar out/host/linux-x86/framework/jill.jar --output out/target/common/obj/JAVA_LIBRARIES/sdk_v21_intermediates/classes.jack.tmpjill.jack prebuilts/sdk/21/android.jar)
&& (mkdir -p out/target/common/obj/JAVA_LIBRARIES/sdk_v21_intermediates/classes.jack.tmpjill.res)
&& (unzip -qo prebuilts/sdk/21/android.jar -d out/target/common/obj/JAVA_LIBRARIES/sdk_v21_intermediates/classes.jack.tmpjill.res)
&& (find out/target/common/obj/JAVA_LIBRARIES/sdk_v21_intermediates/classes.jack.tmpjill.res -iname \"*.class\" -delete)
&& (JACK_VERSION=2.26.RELEASE out/host/linux-x86/bin/jack @build/core/jack-default.args --verbose error -D jack.import.resource.policy=keep-first -D jack.import.type.policy=keep-first --import out/target/common/obj/JAVA_LIBRARIES/sdk_v21_intermediates/classes.jack.tmpjill.jack --import-resource out/target/common/obj/JAVA_LIBRARIES/sdk_v21_intermediates/classes.jack.tmpjill.res --output-jack out/target/common/obj/JAVA_LIBRARIES/sdk_v21_intermediates/classes.jack)
&& (rm -rf out/target/common/obj/JAVA_LIBRARIES/sdk_v21_intermediates/classes.jack.tmpjill.res)
&& (rm out/target/common/obj/JAVA_LIBRARIES/sdk_v21_intermediates/classes.jack.tmpjill.jack)
" GC overhead limit exceeded Try increasing heap size with java option '-Xmx' Warning: This may have produced partial or corrupted output. [ 35% 11837/33004] Building with Jack: out/target/common/obj/JAVA_LIBRARIES/core-all_intermediates/with-local/classes.dex FAILED: /bin/bash out/target/common/obj/JAVA_LIBRARIES/core-all_intermediates/with-local/classes.dex.rsp Communication error with Jack server (52) ninja: build stopped: subcommand failed. build/core/ninja.mk:139: recipe for target 'ninja_wrapper' failed make: *** [ninja_wrapper] Error 1****

Đây là thông báo lỗi khi quá trình xây dựng dừng lại, nó cố gắng tăng kích thước heap với tùy chọn java "-Xmx", nhưng tôi không biết cách định cấu hình khi xây dựng nguồn Android.Đã vượt quá giới hạn vượt quá GC khi xây dựng nguồn Android

+0

Máy này có bao nhiêu bộ nhớ? –

+0

Kích thước bộ nhớ của máy là 4G, có thể không đủ cho tòa nhà này. – yuiopt

+0

-Xmx3500m có thể không được tôn trọng. Tôi sẽ thấy đầu tiên nếu nó hoàn thành trên một máy có nhiều bộ nhớ hơn. –

Trả lời

5

Có vẻ như một lỗi trong các tệp dữ liệu của Android - 3500 megabyte thực sự không đủ để xây dựng một số gói Java bên trong Android. Đó là giá trị hardcoded, bạn có thể tìm thấy nó trong build/core/config.mk. Để bây giờ bạn có thể chỉ cần tăng nó cục bộ (tuy nhiên nó là lạ mà nó không được đặt trong một số biến môi trường).

Tôi đã tăng nó lên 5500 megabyte và nó hoạt động như một sự quyến rũ.

+0

Cảm ơn bạn đã giúp đỡ, tôi phát hiện ra tùy chọn ** - Xmx ** trong 'config.mk ', nhưng không có nhiều ký ức được sử dụng, có lẽ tôi nên tăng bộ nhớ của máy. – yuiopt

+1

@yuiopt vâng, xây dựng song song cao là khá bộ nhớ nặng - bạn có thể tăng trao đổi và/hoặc giảm số lượng các chủ đề xây dựng. –

+0

Xin chào, tôi đã gặp sự cố này và tôi đã tìm thấy trang này từ các tài liệu: https://source.android.com/source/jack.html#jack_troubleshooting. Ngoài ra, tôi không tìm thấy lệnh xmx trong tệp config.mk, chỉ dòng này: APICHECK_COMMAND: = $ (APICHECK) -JXmx1024m -J "classpath $ (APICHECK_CLASSPATH)" Đây có phải là dòng bạn đang đề cập đến ? – Poutrathor

0

Google khuyến nghị tối thiểu 16 GB RAM để xây dựng mã nguồn và chúng tôi đã trải nghiệm điều đó với Android N thực sự là bắt buộc.

Trừ khi 16 GB RAM được cấp cho máy, độ tin cậy của việc xây dựng mã nguồn thực sự rất thấp. Bạn có thể thử nhiều cấu hình của jack-server và các tham số nhưng không ai trong số chúng có thể chứng minh là đáng tin cậy.

này đang chạy thread vấn đề tương tự phải đối mặt nhiều: - https://code.google.com/p/android/issues/detail?id=194027

Tôi hy vọng điều này sẽ giúp!

Các vấn đề liên quan