尝试构建A7.1时出现以下错误。
[ 15% 1827/11495] target Package: framework-res ...bj/APPS/framework-res_intermediates/package.apk)
warning: string 'candidates_style' has no default translation.
warning: string 'candidates_style' is missing 41 required localizations: az_AZ be_BY bn_BD bs_BA en_AU en_CA en_GB en_IN en_NZ en_SG en_US eo_EU et_EE eu_ES gl_ES gu_IN hy_AM is_IS ka_GE kk_KZ km_KH kn_IN ky_KG lo_LA mk_MK ml_IN mn_MN mr_IN ms_MY my_MM ne_NP pa_IN si_LK sq_AL ta_IN te_IN ur_PK uz_UZ zh_CN zh_HK zh_TW
warning: string 'gsm_alphabet_default_charset' has no default translation.
warning: string 'gsm_alphabet_default_charset' is missing 90 required localizations: af_ZA am_ET ar_EG az_AZ be_BY bg_BG bn_BD bs_BA ca_ES cs_CZ da_DK de_AT de_CH de_DE de_LI el_GR en_AU en_CA en_GB en_IN en_NZ en_SG en_US eo_EU es_ES es_US et_EE eu_ES fa_IR fi_FI fr_BE fr_CA fr_CH fr_FR gl_ES gu_IN hi_IN hr_HR hu_HU hy_AM in_ID is_IS it_CH it_IT iw_IL ja_JP ka_GE kk_KZ km_KH kn_IN ky_KG lo_LA lt_LT lv_LV mk_MK ml_IN mn_MN mr_IN ms_MY my_MM nb_NO ne_NP nl_BE nl_NL pa_IN pl_PL pt_BR pt_PT ro_RO ru_RU si_LK sk_SK sl_SI sq_AL sr_RS sv_SE sw_TZ ta_IN te_IN th_TH tl_PH tr_TR uk_UA ur_PK uz_UZ vi_VN zh_CN zh_HK zh_TW zu_ZA
warning: string 'wfcSpnFormat' has no default translation.
warning: string 'wfcSpnFormat' is missing 41 required localizations: az_AZ be_BY bn_BD bs_BA en_AU en_CA en_GB en_IN en_NZ en_SG en_US eo_EU et_EE eu_ES gl_ES gu_IN hy_AM is_IS ka_GE kk_KZ km_KH kn_IN ky_KG lo_LA mk_MK ml_IN mn_MN mr_IN ms_MY my_MM ne_NP pa_IN si_LK sq_AL ta_IN te_IN ur_PK uz_UZ zh_CN zh_HK zh_TW
ninja: build stopped: subcommand failed.
build/core/ninja.mk:148: recipe for target 'ninja_wrapper' failed
make: *** [ninja_wrapper] Error 1
但是真正奇怪的是。
我也有两个/projects/SDK3288A71/
和/projects/SRC3288A71/
之类的SDK目录,请尝试分别构建每个SDK,并成功构建了一个SDK,但其他SDK却发生在忍者错误上方。
我尝试过:
但是我遇到了同样的错误。这个错误点不一样。
有时达到2%,10%,51%,14%,15%.... 我不知道为什么和发生了什么。
请告诉我。
答案 0 :(得分:2)
为什么构建失败?
确保同步到良好的分支,例如android-10.0.0_r25 并非所有分支都可以成功构建。
我的笔记本电脑是12G(8G + 4G),我在编译时发现,它始终会失败。 (Java堆大小足够大,它是4G,并且我设置了环境变量JAVA_TOOL_OPTIONS)
,然后检查dir下的详细日志。而且我找不到修复错误的任何线索。
查看我的错误日志:
失败:out / soong / .intermediates / frameworks / base / test-mock / android.test.mock.docs.system / android_common / android.test.mock.docs.system-stubs.srcjar out / soong /。中间体/frameworks/base/test-mock/android.test.mock.docs.system/android_common/android.test.mock.docs.system_api.txt out / soong / .intermediates / frameworks / base / test-mock / android。 test.mock.docs.system / android_common / android.test.mock.docs.system_removed.txt 提起_JAVA_OPTIONS:-Xmx4096m 被杀死
我一次又一次地编译,一次又一次失败,直到我运行top命令并查看忍者和Java进程的内存使用情况,然后才发现它们耗尽内存的原因,从而使构建过程陷入困境。
特别是在构建 // frameworks / base:system-api-stubs-docs Metalava 时,构建此项目时,内存使用量高达6〜7GB,和忍者杀死了卡住的构建过程,因此构建失败。
因此,当发生错误时,我运行make -j1命令而不是默认的make,仅运行一个java和ninja进程,因此不需要那么多内存,编译成功。
您可以尝试我的方式
发生错误时,您可以运行make -j1命令而不是默认命令make,因此只有一个构建过程正在运行,不会耗尽您的内存,构建系统将在以下时间继续构建剩余的项目错误发生。
通过导致失败的项目后,可以键入CTRL + C来中断构建过程。请记住,只需键入一次,然后等待所有java进程退出,以避免引入意外错误。之后,再次输入不带-j1的make命令,以使用4个线程再次构建左侧项目。
最后,您将看到:
构建成功完成(10:48(mm:ss))