java中添加https证书,解决PKIX错误

在linux中部署了一个java项目,期间用到了https调用其他项目的接口,这个https证书是自己生成的测试证书,不会被java自带的安全证书库识别,调用时会报错:

sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

解决

一、把自己生成的证书如(test.crt,或者test.cer)放到java环境中,我的是:

/usr/java/jdk1.8.0_121/jre/lib/security/

二、执行以下命令

keytool -import -alias test -keystore /usr/java/jdk1.8.0_121/jre/lib/security/cacerts -file /usr/java/jdk1.8.0_121/jre/lib/security/test.crt -trustcacerts

三、这时会提示输入密码

默认密码是changeit,如果你的密码不正确那就重新下一个jdk,然后把cacerts这个文件替换一下,应该好用

四、重启本地的java项目


版权声明:本文为anshichuxuezhe原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。