首页 > 解决方案 > Java 14 javax.net.ssl.SSLException 仅在某些具有相同 cacerts 文件的计算机上发生

问题描述

我有一个 Java 14 应用程序,其中一些计算机在尝试访问https://nomads.ncep.noaa.gov/cgi-bin/filter_gfs_1p00.pl时抛出 javax.net.ssl.SSLHandshakeException 或 javax.net.ssl.SSLException. 它对我来说很好,所有计算机都使用相同的 Windows 10 jre(我使用 jlink 构建)和来自 OpenJDK 14 的相同 cacerts。由于我没有问题,我无法重现和调试。我曾尝试让用户更换其中一台计算机上的 cacerts,但没有任何区别。此外,将相同的 URL 直接粘贴到 Chrome 中也可以。我没有尝试从 Windows 导出证书并重新导入到 cacerts,因为我的 cacerts 可以正常工作,我不知道这会产生什么影响,除非每个 cacerts 都是特定于计算机的,而从修改日期起似乎并非如此。

关于可能导致此问题的原因以及 Java 抛出异常的原因的任何想法。

标签: javajava-14sslexceptioncacerts

解决方案


解决了。特定用户没有更新 jre,只有 jar 文件,并且缺少 jdk.crypto 模块。


推荐阅读