Android 系统编译不过了报错Try jack-diagnose,SSL error when connecting to the Jack server

Posted learnframework

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 系统编译不过了报错Try jack-diagnose,SSL error when connecting to the Jack server相关的知识,希望对你有一定的参考价值。

课程答疑和新课信息:QQ交流群:422901085进行课程讨论
FrameWork入门课视频链接:https://edu.csdn.net/course/detail/30298
FrameWork实战课1视频链接:https://edu.csdn.net/course/detail/30275
专题博客系列:
Android 8.1 zygote 启动过程源码
Android Framework实战视频–Zygote的fork进程篇
Android Framework实战视频–SystemServer启动篇
Android Framework实战视频–SystemServer启动FallbackHome篇
Android Framework实战视频–FallbackHome进程启动及Activity启动篇
Android Framework实战视频–FallbackHome结束启动Launcher篇
Android Framework实战视频–BootAnimation的启动源码分析(Android8.1)

Android Framework实战视频–init进程的bootanimation启动源码分析(补充Android 10部分的BootAnimation的启动源码分析)

首先感谢学员提供线索和链接,我这边做一个总结,针对近期的编译android 8.1突然2021年5月1号左右突然jack server一直报错,网络百度都是些什么修改端口等,根本无法解决,这边按照jack 命令导出报告的日志打印如下:

$ JACK_EXTRA_CURL_OPTIONS=-v jack-admin list server
*   Trying 127.0.0.1...
* Connected to localhost (127.0.0.1) port 18077 (#0)
* found 1 certificates in /home/test/.jack-server/server.pem
* found 521 certificates in /etc/ssl/certs
* ALPN, offering http/1.1
* gnutls_handshake() failed: The TLS connection was non-properly terminated.
* Closing connection 0
SSL error when connecting to the Jack server. Try 'jack-diagnose'

明显是什么gnutls_handshake() failed: The TLS connection was non-properly terminated.网络链接和鉴权等错误,和端口号一毛钱关系都没有

这里的首先我这边一共提出2中解决方案:
1、直接关闭jack方式,即压根我们就不使用jack来编译

把 原来的 make命令变成 --》 make ANDROID_COMPILE_WITH_JACK=false

这种方式就是不管什么原因jack导致无法编译,我就关闭jack,不使用总可以吧,相当于躲避规避

2、如果还想使用jack,那这种解决方法就得感谢我的学员提供线索了
原因:
问题出现的原因是jdk自行更新新版本,新版本的说明为

释放说明 https://java.com/en/download/help/release_changes.html

释放日期 https://java.com/en/download/help/release_dates.html

在这里插入图片描述

大概就是java这个日期有更新,并且有如下release Note:
Other notes: Disable TLS 1.0 and 1.1
TLS 1.0 and 1.1 are versions of the TLS protocol that are no longer considered secure and have been superseded by more secure and modern versions (TLS 1.2 and 1.3).
These versions have now been disabled by default. If you encounter issues, you can, at your own risk, re-enable the versions by removing “TLSv1” and/or “TLSv1.1” from the jdk.tls.disabledAlgorithms security property in the java.security configuration file.
See JDK-8202343

大概就是不支持这种不安全的TLS 1.0 and 1.1,如果要开启就要去jdk.tls.disabledAlgorithms把他给去除

具体做法:
去/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/security/java.security 文件中寻找到jdk.tls.disabledAlgorithms的config
你们应该如下:
在这里插入图片描述
所以这里我们要解决就删除这两个,编辑命令就

sudo vi /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/security/java.security 

删除后进行wq保存
最后记得把系统重启一下:

sudo reboot

然后再进行make:
在这里插入图片描述

好了到这里,不要问我是谁,我是致力于提高 android高端开发的 千里马。。。。。,要感谢我就加群422901085买我课。。。。谢谢!

以上是关于Android 系统编译不过了报错Try jack-diagnose,SSL error when connecting to the Jack server的主要内容,如果未能解决你的问题,请参考以下文章

JACK报错处理&多用户编译

JACK错误 SSL error when connecting to the Jack server. Try 'jack-diagnose'

Communication error with Jack server , try ‘jack-diagnose‘ or see Jack server log 报错解决办法

Communication error with Jack server , try ‘jack-diagnose‘ or see Jack server log 报错解决办法

连接到 Jack 服务器时出现错误“SSL 错误”重建 android 代码。尝试“千斤顶诊断”

JAVA升级导致Android编译时Jack server出错