杰克服务器 OpenSSL 错误与 AdoptOpenJDK 8

如何解决杰克服务器 OpenSSL 错误与 AdoptOpenJDK 8

Debian APT repository 不再包含 OpenJDK 8,可用的最早版本是 OpenJDK 11。对于 AOSP 构建环境,我需要版本 8。 因此,我使用了 AdoptOpenJDK 8

我在以下帖子中遇到了与 OP 类似的问题:

Jack server failed to (re)start

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

Rebuild android code with error “SSL error when connecting to the Jack server. Try 'jack-diagnose”

然而,所有解决方案都不适用,因为jdk.tls.disabledAlgorithms包含"TLSv1""TLSv1.1"在我的 java.security 文件中,该文件位于 /usr/lib/jvm/adoptopenjdk-8-hotspot-amd64/jre/lib/security/java.security。因为/etc/java-8-openjdk/目录不存在:

jdk.tls.disabledAlgorithms=SSLv3,TLSv1,TLSv1.1,RC4,DES,MD5withRSA,\
    DH keySize < 1024,EC keySize < 224,3DES_EDE_CBC,anon,NULL,\
    include jdk.disabled.namedCurves
jdk.disabled.namedCurves = secp112r1,secp112r2,secp128r1,secp128r2,\
    secp160k1,secp160r1,secp160r2,secp192k1,secp192r1,secp224k1,\
    secp224r1,secp256k1,sect113r1,sect113r2,sect131r1,sect131r2,\
    sect163k1,sect163r1,sect163r2,sect193r1,sect193r2,sect233k1,\
    sect233r1,sect239k1,sect283k1,sect283r1,sect409k1,sect409r1,\
    sect571k1,sect571r1,X9.62 c2tnb191v1,X9.62 c2tnb191v2,\
    X9.62 c2tnb191v3,X9.62 c2tnb239v1,X9.62 c2tnb239v2,X9.62 c2tnb239v3,\
    X9.62 c2tnb359v1,X9.62 c2tnb431r1,X9.62 prime192v2,X9.62 prime192v3,\
    X9.62 prime239v1,X9.62 prime239v2,X9.62 prime239v3,brainpoolP256r1,\
    brainpoolP320r1,brainpoolP384r1,brainpoolP512r1

我试图关注David Dong's blog guide。 虽然,jack-diagnose 报告了同样的错误

error: process ID list Syntax error

Usage:
 ps [options]

 Try 'ps --help <simple|list|output|threads|misc|all>'
  or 'ps --help <s|l|o|t|m|a>'
 for additional help text.

For more details see ps(1).
Port 8077 is used by another process (pid=),please ensure to free the port or change port configuration in '/home/jimjamz/.jack-settings' and '/home/jimjamz/.jack-server/config.properties'
error: process ID list Syntax error

和端口 8076 相同的错误,我尝试更改 ~/.jack-settings~/.jack-server/config.properties 中的端口(使用 28076、28077 和许多其他的),但我仍然收到同样的错误

jack 服务器日志没有显示任何有趣的内容。 ~/.jack-server/logs/jack-server-0-0.log_:

14:29:14.008: INFO: com.android.jack.server.JackHttpServer: Loading config of jack server version: 1.3-a11 '1.3' (402300 704631c4e9bbfb4e8b052365140f79974b9f4cf4 by android-jack-team@google.com)
14:29:14.087: INFO: com.android.jack.server.JackHttpServer: Starting service connection server on /127.0.0.1:8076
14:29:14.104: INFO: com.android.jack.server.JackHttpServer: Starting admin connection on /127.0.0.1:8077
14:29:14.399: INFO: com.android.jack.server.JackHttpServer: Start timer
14:32:14.402: INFO: com.android.jack.server.JackHttpServer: Server mode changing from WAIT to IDLE
14:44:14.402: INFO: com.android.jack.server.JackHttpServer: Server mode changing from IDLE to DEEP_IDLE
16:29:14.403: INFO: com.android.jack.server.JackHttpServer: Server mode changing from DEEP_IDLE to SLEEP

我做了./jack-admin dump-report,其中包含:

* connect to ::1 port 8077 Failed: Connection refused
*   Trying 127.0.0.1...
* TCP_NODELAY set
* Expire in 150000 ms for 3 (transfer 0x563f0f3b2f00)
* connect to 127.0.0.1 port 8077 Failed: Connection refused
* Failed to connect to localhost port 8077: Connection refused
* Closing connection 0
No Jack server running. Try 'jack-admin start-server'

将端口设置为其他内容时,转储的报告会显示一些附加信息:

* connect to ::1 port 28077 Failed: Connection refused
*   Trying 127.0.0.1...
* TCP_NODELAY set
* Expire in 150000 ms for 3 (transfer 0x55aff5a02f00)
* Connected to localhost (127.0.0.1) port 28077 (#0)
* ALPN,offering h2
* ALPN,offering http/1.1
* successfully set certificate verify locations:
*   CAfile: /home/jimjamz/.jack-server/server.pem
  CApath: /etc/ssl/certs
} [5 bytes data]
* TLSv1.3 (OUT),TLS handshake,Client hello (1):
} [512 bytes data]
* OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to localhost:28077 
* Closing connection 0
SSL error when connecting to the Jack server. Try 'jack-diagnose'

我认为这表明它正在尝试(但失败)使用 TLSv1.3,而不是 TLSv1.1 或 TLSv1,后者似乎没有被禁用。

这些症状确实指向了相同的 TLS 问题,但是这些选项已经没有包含在我的 jdk.tls.disabledAlgorithms 中,还有什么办法可以解决它?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?