FAILED: /bin/bash -c "(prebuilts/sdk/tools/jack-admin install-server prebuilts/sdk/tools/jack-launcher.jar prebuilts/sdk/tools/jack-server-4.8.ALPHA.jar 2>&1 || (exit 0) ) && (JACK_SERVER_VM_ARGUMENTS=\"-Dfile.encoding=UTF-8 -XX:+TieredCompilation\" prebuilts/sdk/tools/jack-admin start-server 2>&1 || exit 0 ) && (prebuilts/sdk/tools/jack-admin update server prebuilts/sdk/tools/jack-server-4.8.ALPHA.jar 4.8.ALPHA 2>&1 || exit 0 ) && (prebuilts/sdk/tools/jack-admin update jack prebuilts/sdk/tools/jacks/jack-2.28.RELEASE.jar 2.28.RELEASE || exit 47; prebuilts/sdk/tools/jack-admin update jack prebuilts/sdk/tools/jacks/jack-3.36.CANDIDATE.jar 3.36.CANDIDATE || exit 47; prebuilts/sdk/tools/jack-admin update jack prebuilts/sdk/tools/jacks/jack-4.7.BETA.jar 4.7.BETA || exit 47 )"
Jack server already installed in "/home/xxx/.jack-server"
Communication error with Jack server (58), try 'jack-diagnose' or see Jack server log
Failed to contact Jack server: Problem reading /home/xxx/.jack-server/client.pem. Try 'jack-diagnose'
Failed to contact Jack server: Problem reading /home/xxx/.jack-server/client.pem. Try 'jack-diagnose'java
检索发现本地安装目录/home/xxx/下有.jack-settings文件,/home/xxx/.jack-server目录下无logs与config.properties文件;
在Android源码prebuilts/sdk/tools/目录下执行以下命令:
./jack-admin stop-server
./jack-admin start-server
/home/xxx/.jack-server目录下就会生成logs与config.properties文件android
分析jack-server-0-1.log中错误信息以下:
xxx@SZ-OFFICE:~/.jack-server/logs$ cat jack-server-0-1.log
12:33:51.679: INFO: com.android.jack.server.JackHttpServer: Starting jack server version: 1.3-a8 '1.3' (291201 fcd657165d2fd6dcf1bf4c3002c9c8f75383e815 by android-jack-team@google.com)
12:33:51.734: INFO: com.android.jack.server.JackHttpServer: Starting service connection server on /127.0.0.1:8076
12:33:51.746: 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:611)
at com.android.jack.server.JackServerImpl.run(JackServerImpl.java:62)
at com.android.jack.launcher.ServerLauncher$3.run(ServerLauncher.java:391)
at java.lang.Thread.run(Thread.java:745)
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:437)
at sun.nio.ch.Net.bind(Net.java:429)
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:605)
... 3 moreapi
发现Problem while opening service port,因此须要修改端口:
1). $HOME/.jack-settings:
# Server settings
SERVER_HOST=127.0.0.1
SERVER_PORT_SERVICE=8076 //本身写一个,最好大一些的(8086)
SERVER_PORT_ADMIN=8077 //本身写一个,最好大一些的(8087)bash
# Internal, do not touch
SETTING_VERSION=4
2). $HOME/.jack-server/config.properties:
#Fri Jan 19 10:21:41 CST 2018
jack.server.max-jars-size=104857600
jack.server.max-service=4
jack.server.service.port=8076 // 和上面settings的值同样
jack.server.max-service.by-mem=1\=2147483648\:2\=3221225472\:3\=4294967296
jack.server.admin.port=8077 // 和上面settings的值同样
jack.server.config.version=2
jack.server.time-out=7200ui
修改端口号后,Android系统编译成功。google