我想通过 HttpURLConnection 连接到站点。首先,我偶然发现了 javax.net.ssl.SSLHandshakeException,因为我忘记通过 keytool -importcert 为 .../lib/security 下的站点添加 carcerts。之后就可以轻松建立连接了。
但是,今天它不再工作了,无需更改代码或其他任何内容。似乎抛出了以下异常:
javax.net.ssl.SSLException: Unexpected error: java.security.InvalidAlgorithmParameterException: the
trustAnchors parameter must be non-empty
尽管网上有很多可能的解决方案,但没有一个可以让我摆脱这个错误。
也许需要在 eclipse 内完成一些设置?
我正在运行 Gentoo Linux,我终于解决了这个问题...等待...重新安装
dev-java/icedtea
!我觉得这是一个超级蹩脚的答案,但这是“唯一”有效的方法。很多人都遇到过这个问题,我希望这对大家有所帮助。我记得几年前在 OpenJDK 或 icedtea 项目中读到过有关此问题的错误报告,但我无法再次追踪到它。我认为重新安装是有效的,因为我的旧罐子有错误,而新版本已修复,但我不能 100% 确定。
具体来说,我跑了:
sudo emerge -1v dev-java/icedtea
eselect java-vm set user icedtea-8
ANDROID_HOME=/home/daniel/.android-sdk-update-manager /home/daniel/.android-sdk-update-manager/tools/bin/sdkmanager --list
如果您使用的是 Ubuntu、Debian 等。我想您会想要
apt install --reinstall openjdk-8-jre
或任何您的 Java 8 软件包的名称。