为了账号安全,请及时绑定邮箱和手机立即绑定

如何修复:SunTls12RsaPremasterSecret KeyGenerator 不可用

如何修复:SunTls12RsaPremasterSecret KeyGenerator 不可用

哈士奇WWW 2022-06-23 15:47:55
我在尝试使用 Javax.mail 创建 SSL 连接时遇到“KeyGenerator not available”错误。该项目在 3 到 4 年前就可以运行,它是对 JDK1.8 和新 JRE 的更新。我认为问题在于更新项目的一些基本怪癖。我已经关注了这里列出的所有内容。我将 JKD1.8.0_131/jre/lib/ext/sunjce_provider.jar 的路径添加到我的项目库中,这样它就在 JRE 库和项目类路径中。java.security.NoSuchAlgorithmException: SunTls12RsaPremasterSecret KeyGenerator not availableat javax.crypto.KeyGenerator.<init>(KeyGenerator.java:169) ~[?:1.8.0_131]at javax.crypto.KeyGenerator.getInstance(KeyGenerator.java:223) ~[?:1.8.0_131]at sun.security.ssl.JsseJce.getKeyGenerator(JsseJce.java:251) ~[?:1.8.0_131]at sun.security.ssl.RSAClientKeyExchange.<init>(RSAClientKeyExchange.java:78) ~[?:1.8.0_131].....我希望代码此时创建一个连接。我可以做些什么来解决这个问题?
查看完整描述

2 回答

?
翻过高山走不出你

TA贡献1875条经验 获得超3个赞

无论如何,您都应该将 Java 8 更新到当前的补丁级别,但根据这个问题,您至少需要补丁级别 192 而不是 131。这是 OpenJDK 的问题,但对于 Oracle Java 来说似乎是一样的。

我假设您的代码正在连接到自您上次使用以来已更新到 TLS 1.2 的服务器。


查看完整回答
反对 回复 2022-06-23
?
隔江千里

TA贡献1906条经验 获得超10个赞

不知道为什么,但这种方法在 Eclipse 中帮助了我:https ://www.codetd.com/en/article/9438315

首选项 -> 已安装的 JRE -> 编辑您的 java 8 JRE 并“恢复默认值”


查看完整回答
反对 回复 2022-06-23
  • 2 回答
  • 0 关注
  • 1082 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号