Jack-Server(二) aosp 编译过程中Jack server SSL error 错误解决方法

一.jack-server 配置

1.1.Android7.1 系统使用 jack-server 作为 java 代码编译器,在编译过程中可能会遇到以下类似的错误:

1
2
3
4
Jack server already installed in "/home/user/.jack-server"
Communication error with Jack server (1), try 'jack-diagnose' or see Jack server log
Communication error with Jack server 1. Try 'jack-diagnose'
Communication error with Jack server 1. Try 'jack-diagnose'

此错误是由于 jack-server 本身编译器限制,同一个网络端口号不能多个用户同 时使用

即多个用户在同一个服务器上协同开发过程中,编译 Android7.1 时,需要 配置各自使用不同的网络端口号  

1.2.jack-server 的两个配置文件(user 为对应用户的用户名),决定了它所使用的端口号
1
2
/home/user/.jack-server/config.properties
/home/user/.jack-settings

这两个配置文件需要配置两个端口号,分别为服务端端口号,及客户端端口号, 两个配置文件中的端口号要匹配 

1
2
3
4
5
jack.server.service.port=8074
jack.server.admin.port=8075
SERVER_PORT_SERVICE=8074
SERVER_PORT_ADMIN=8075

配置步骤如下: 确保两个配置文件存在,并且权限设置为 0600

1
2
chmod 0600 /home/user/.jack-server/config.properties
chmod 0600 /home/user/.jack-settings 
1.3. 文件 .jack-settings 文件目录 .jack-server 

1.4. .jack-server/config.properties

修改端口号,请更改 service port 及 admin port 为其他端口号,两个配置文件 里的端口号需要匹配  示例如下: 

1
2
3
4
5
jack.server.service.port=8090
jack.server.admin.port=8091
SERVER_PORT_SERVICE=8090
SERVER_PORT_ADMIN=8091
若两个配置文件不存在 请参照以下文本新建这两个配置文件  config.properties 文件示例如下(端口号需按实际修改)
.jack-settings
1
2
3
4
5
6
7
# Server settings
SERVER_HOST=127.0.0.1
SERVER_PORT_SERVICE=8090
SERVER_PORT_ADMIN=8091
  
# Internal, do not touch
SETTING_VERSION=4

.jack-server/config.properties

1
2
3
4
5
6
7
jack.server.max-jars-size=104857600
jack.server.max-service=4
jack.server.service.port=8090
jack.server.max-service.by-mem=1\=2147483648\:2\=3221225472\:3\=4294967296
jack.server.admin.port=8091
jack.server.config.version=2
jack.server.time-out=7200

1.5. prebuilts/sdk/tools   重启 jack-server ./jack-admin kill-server && ./jack-admin start-server

 

 

二 .Android 7.1 编译过程中Jack server SSL error 错误解决方法
2.1.使用的环境是ubuntu 16.04 编译大概率会出现jack server 跑不起来然后抛一个类似这样的错误

如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[ 10% 538/4980] Ensuring Jack server is installed and started
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\"
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/user/.jack-server"
Communication error with Jack server (35), try 'jack-diagnose' or see Jack server log
SSL error when connecting to the Jack server. Try 'jack-diagnose'
SSL error when connecting to the Jack server. Try 'jack-diagnose'
[ 10% 541/4980] build
out/target/product/rk3399_mid/obj/ETC/precompiled_sepolicy_intermediates/precompiled_sepoli
cy
ninja: build stopped: subcommand failed.
22:32:18 ninja failed with: exit status 1
build completed failed
 
2.2.原因就是编译时用的是open-jdk 8u292,默认禁用了TLSv1, TLSv1.1, 从/etc/java-8-openjdk/security/java.security中取消TLSv1, TLSv1.1 禁用, 修改前:  

修改后:

1
2
3
4
5
jdk.tls.disabledAlgorithms=SSLv3, RC4, DES, MD5withRSA, \
 
DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL, \
 
include jdk.disabled.namedCurves

2.3./prebuilts/sdk/tools/ 目录下执行 ./jack-admin kill-server && ./jack-admin start-server 成功  

posted @   CrushGirl  阅读(569)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
历史上的今天:
2021-03-25 RK3288 recovery ota升级包
点击右上角即可分享
微信分享提示