openJdk 升级到 8u292 会破坏我的 aosp 构建系统吗?

Is openJdk upgrading to 8u292 break my aosp build system?

软件环境:

昨天我将我的 OpenJDK 从 8u282 升级到 8u292,它运行良好。现在破损的建筑日志说:

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 "~/.jack-server"
Launching Jack server java -XX:MaxJavaStackTraceDepth=-1 -Djava.io.tmpdir=/tmp -Dfile.encoding=UTF-8 -XX:+TieredCompilation -cp ~/.jack-server/launcher.jar com.android.jack.launcher.ServerLauncher
Jack server failed to (re)start, 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'
ninja: build stopped: subcommand failed.
10:11:50 ninja failed with: exit status 1

我检查了 ~/.jack-server/log/xxxx-0-0.log 中的日志。它与错误无关。

我使用curl命令连接到服务器,它说:

$ curl https://127.0.0.1:8076/jack
curl: (35) OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to 127.0.0.1:8076

我更改了prebuilts/sdk/tools/jack-admin中的脚本以打印$CURL_CODE,与我的shell curl命令相同,报告错误代码35。

这个url讨论了类似的问题: https://forums.gentoo.org/viewtopic-t-1060536-start-0.html

但我不确定。

这里是提示上述错误的源脚本link: https://android-opengrok.bangnimang.net/android-8.1.0_r81/xref/prebuilts/sdk/tools/jack-admin?r=692a2a62#89

我觉得很有可能是这样的:

基本上,从 8u291 开始,他们已经关闭(默认)对 TLS 1.0 和 1.1 的支持。这些版本的 TLS 是旧的、不安全的并且已弃用;见 https://en.wikipedia.org/wiki/Transport_Layer_Security

8u291 发行说明中提到了这一点。

我的建议是找出您的构建系统未使用 TLS 1.2 或更高版本的原因。然后升级/修复它。


您可以通过 运行 curl--tlsv1.2 选项来测试这是否是问题所在。

我有同样的问题,通过在文件 /etc/java-8-openjdk/security/java.security.

的 jdk.tls.disabledAlgorithms 配置中删除“TLSv1, TLSv1.1” 解决了这个问题

正在删除文件 /etc/java-8-openjdk/security/java.security.

中 jdk.tls.disabledAlgorithms 配置中的“TLSv1、TLSv1.1”

对我有用。

Ubuntu 更新 jdk 8u292 背景,因此很难与 jdk 相关。

首先,一些信息 link 更改插孔端口,我已经更改了插孔端口但它不起作用。

其次,我尝试更新ubuntu16.04.2和ubuntu16.04.7。但仍然出现“连接到 Jack 服务器时出现 SSL 错误。尝试 'jack-diagnose'”的错误。

非常感谢@Guillaume P。