现象:
同样的java代码,访问有的https正常(如百度),访问有的https报证书问题,如下错误:
by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
解决访问:
由于证书的颁发机构不一致,导致证书无法自动下载(猜测),因为需要手动导入证书.
-- 导入证书,cacerts文件是存在的,需要指定正确的路径,example.crt:证书认为路径.
keytool -import -alias example -keystore $JAVA_HOME/jre/lib/security/cacerts -file example.crt
-- 验证证书是否可以导入成功
keytool -list -keystore $JAVA_HOME/jre/lib/security/cacerts -alias example
-- 中间会输入密码,默认的密码为:changeit

