FAILED: setup-jack-сервер при сборке LineageOS
Я пытаюсь собрать LineageOS для Moto Z (грифон) на сервере, но сборка падает и сгорает через 5 минут.
FAILED: setup-jack-server
/bin/bash -c "(prebuilts/sdk/tools/jack-admin install-server prebuilts/sdk/tools/jack-launcher.jar prebuilts/sdk/tools/jack-server-4.11.ALPHA.jar 2>&1 || (exit 0) ) && (JACK_SERVER_VM_ARGUMENTS=\"-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx16G\" prebuilts/sdk/tools/jack-admin start-server 2>&1 || exit 0 ) && (prebuilts/sdk/tools/jack-admin update server prebuilts/sdk/tools/jack-server-4.11.ALPHA.jar 4.11.ALPHA 2>&1 || exit 0 ) && (prebuilts/sdk/tools/jack-admin update jack prebuilts/sdk/tools/jacks/jack-4.32.CANDIDATE.jar 4.32.CANDIDATE || exit 47 )"
Jack server already installed in "/home/dablord/.jack-server"
Launching Jack server java -XX:MaxJavaStackTraceDepth=-1 -Djava.io.tmpdir=/tmp -Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx16G -cp /home/dablord/.jack-server/launcher.jar com.android.jack.launcher.ServerLauncher
Jack server failed to (re)start, try 'jack-diagnose' or see Jack server log
No Jack server running. Try 'jack-admin start-server'
No Jack server running. Try 'jack-admin start-server'
[ 3% 911/25667] //art/compiler:libart-compiler clang++ optimizing/instruction_builder.cc [linux x86]
ninja: build stopped: subcommand failed.
07:02:53 ninja failed with: exit status 1
Сервер настроен для личного использования. Он имеет 24 ГБ оперативной памяти и 300 ГБ доступной памяти. Я также настроил файл подкачки на 20 ГБ на тот случай, если серверу Джек понадобится больше.
Файл журнала Jack сообщает о следующем:
07:29:02.699: INFO: com.android.jack.server.JackHttpServer: Loading config of jack server version: 1.3-a11 '1.3' (402300 704631c4e9bbfb4e8b052365140f79974b9f4cf4 by android-jack-team@google.com)
07:29:02.747: INFO: com.android.jack.server.JackHttpServer: Starting service connection server on /127.0.0.1:8076
07:29:02.754: SEVERE: com.android.jack.launcher.ServerLauncher: Server 1 Exception
com.android.jack.server.api.v01.ServerException: Problem while opening service port
at com.android.jack.server.JackHttpServer.start(JackHttpServer.java:785)
at com.android.jack.server.JackServerImpl.run(JackServerImpl.java:67)
at com.android.jack.launcher.ServerLauncher$3.run(ServerLauncher.java:392)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.net.BindException: Address already in use
at sun.nio.ch.Net.bind0(Native Method)
at sun.nio.ch.Net.bind(Net.java:433)
at sun.nio.ch.Net.bind(Net.java:425)
at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)
at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
at com.android.jack.server.ServerParameters.openSocket(ServerParameters.java:88)
at com.android.jack.server.ServerParameters.getServiceSocket(ServerParameters.java:67)
at com.android.jack.server.JackHttpServer.start(JackHttpServer.java:779)
... 3 more
Я попытался изменить номер порта в файлах конфигурации разъема, переустановить разъем, повторно синхронизировать репозиторий, но все безрезультатно.
3 ответа
Я также столкнулся с этой проблемой, и оказалось, что это ОБА проблема с TLS, предполагая, что старая сборка пыталась использовать устаревшую версию TLS, И проблема с памятью.
TLS
Я следил за ошибкой при создании образа Android, сбой с сервером jack :
- Отредактируйте файл java.security в /etc/java-8-openjdk/security/
- Удалить TLSv1, TLSv1.1 из jdk.tls.disabledAlgorithms
- Перезапустите джек-сервер:
jack-admin kill-server
jack-admin start-server
Память
ПРИМЕЧАНИЕ . Перед выполнением следующих шагов необходимо, чтобы сборка сначала завершилась ошибкой.
Я следовал рекомендации здесь: https://groups.google.com/g/android-building/c/8SQ0-4zZDo8, в частности, мне нужно было запустить
export JACK_SERVER_VM_ARGUMENTS="-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx7000m"
А ТАКЖЕ
Я изменил ~/.jack-server/config.properties :
jack.server.max-service=1
Успех
После этого я смог собрать LineageOS
Быстрое и грязное исправление, которое обходит проблему - полностью отключает домкрат после ответа Яна здесь. Я оставляю вопрос открытым, однако, так как он на самом деле не решает проблему.
1. Я преодолел эту ошибку, добавив и отредактировав следующие переменные перед сборкой.
export LC_ALL
2. Отредактируйте файл java.security в /etc/java-8-openjdk/security/
Удалите TLSv1, TLSv1.1 из jdk.tls.disabledAlgorithms Перезапустите сервер jack:
jack-admin kill-server
jack-admin start-server
3.
. build/envsetup.sh
4.Выполнить команду бранча
brunch lineage_jfltexx-userdebug