解决 java 使用ssl过程中出现PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderExcep

今天公司邮箱服务器,更改必须TLS安全认证,原来java mail 邮件发送出现异常:
PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderExcep


该异常是客户端对服务器的证书认证的时候出错了,解决方案把服务器证书加到信任证书库里面
把该证书导入java中的cacerts证书库里


假设jdk安装目录:C:\Program Files\Java\jdk1.7.0_80\jre\lib\security
cmd命令行跳到这个目录
执行keytool -import -alias cacerts -keystore cacerts -file d:\software\CA.cer
此时命令行会提示你输入cacerts证书库的密码,
敲入changeit,这是java中cacerts证书库的默认密码
导入后用-list查看。

重启服务后,发送邮件正常。

ps:tomcat、junit运行时会从默认路径加载cacerts文件,如果main方法执行可以通过环境变量指定信任证书库路径。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值