版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/whorus1/article/details/80364772
Android7.0系统编译工具链使用了全新的Jack server来取代以往的编译器工具
Jack is a new Android toolchain that compiles Java source into Android dex bytecode. It replaces the previous Android toolchain, which consists of multiple tools, such as javac, ProGuard, jarjar, and dx.
报错:Communication error with Jack server (58), try 'jack-diagnose' or see Jack server log
原因:Android7.0 JACK编译器不支持多用户同时编译,其他用户在编译,端口被占用
解决方法:
如下:修改$HOME/.jack-settings和$HOME/.jack-server/config.properties中的端口号(比如都改为8096/8097),方可支持多用户同时编译。
注意:
- 两个文件中的端口号必须一致。
- 修改后的端口号必须是没有被使用的。
$HOME/.jack-settings
# Server settings
SERVER_HOST=localhost
SERVER_PORT_SERVICE=8096
SERVER_PORT_ADMIN=8097
# Internal, do not touch
SETTING_VERSION=4
$HOME/.jack-server/config.properties
#
#Fri May 18 14:48:45 CST 2018
jack.server.idle=180
jack.server.max-service.by-mem=1\=2147483648\:2\=3221225472\:3\=4294967296
jack.server.shutdown=21600
jack.server.time-out=7200
jack.server.max-jars-size=104857600
jack.server.service.port=8096
jack.server.admin.port=8097
jack.server.config.version=4
jack.server.max-service=4
jack.server.deep-idle=900