https私人证书 PKIX path building failed 报错解决

HTTPS请求失败: I/O error on POST request for "https://yum.7x-networks.net/xxxx": sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target; nested exception is javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

idea2025 使用restTemplate 请求https 请求时报没有有效的认证。

原因是请求的url不是通用的CA认证,是私人的证书,jvm 识别不出来,需要手动添加该网站的认证。

1.下载认证文件

证书存在两种后缀CER CRT

CER和CRT的区别

CER和CRT都是用于存储证书的文件扩展名,主要区别在于它们的使用场景和编码格式。
2.如果使用的是本地的java

开始 搜索cmd 使用管理员权限 1.D:\ 2.cd java\j...进入 D:\java\jdk1.8\bin>

路径执行 ,这个时候可以重启idea ,看下请求是否可行

bash 复制代码
keytool -importcert ^
  -alias yum-7x-networks ^
  -file "D:\java\yum.7x-networks.net.crt" ^
  -keystore "D:\java\jdk1.8\jre\lib\security\cacerts" ^
  -storepass changeit ^
  -noprompt

3.如果不生效,查看一下idea本身使用的环境

bash 复制代码
Help → Show Log in Explorer
打开 idea.log 文件
搜索关键词:java.home 或 JAVA_HOME

JetBrains 为了兼容性和稳定性,从 IDEA 2020.1 开始自带 JBR(JetBrains Runtime),即使你电脑上装了多个 JDK,IDEA 默认也使用 JBR 启动。

执行下面的命令

bash 复制代码
keytool -importcert ^
  -alias yum-7x-networks ^
  -file "D:\java\yum.7x-networks.net.crt" ^
  -keystore "D:\IntelliJ IDEA 2025.2\jbr\lib\security\cacerts" ^
  -storepass changeit ^
  -noprompt
bash 复制代码
验证是否导入成功
keytool -list ^
  -keystore "D:\IntelliJ IDEA 2025.2\jbr\lib\security\cacerts" ^
  -storepass changeit ^
  -alias yum-7x-networks

tips: 有可能导入后证书,过一段时间后还是会出现这个报错,本人遇到了一次,个人推断是证书文件的问题,因为我把之前的证书重新导入还是会报错,如果重新导入证书,导入,问题解决。 另外,同事没有遇到该问题,留下了一个问题:是因为jdk 本身的问题还是因为idea 版本的问题...

bash 复制代码
删除认证
keytool -delete ^
  -alias yum-7x-networks ^
  -keystore "D:\IntelliJ IDEA 2025.2\jbr\lib\security\cacerts" ^
  -storepass changeit
相关推荐
Arva .2 小时前
Spring Boot 配置文件
java·spring boot·后端
艾菜籽2 小时前
网络原理-HTTPS
网络·网络协议·https
程序员清风2 小时前
网易三面:Java中默认使用的垃圾回收器及特点分版本说说?
java·后端·面试
这周也會开心2 小时前
本地部署javaweb项目到Tomcat的三种方法
java·tomcat
风象南2 小时前
从RBAC到ABAC的进阶之路:基于jCasbin实现无侵入的SpringBoot权限校验
spring boot·后端
小蒜学长3 小时前
jsp基于JavaWeb的原色蛋糕商城的设计与实现(代码+数据库+LW)
java·开发语言·数据库·spring boot·后端
摇滚侠3 小时前
Spring Boot中使用线程池来优化程序执行的效率!笔记01
java·spring boot·多线程
摇滚侠3 小时前
什么是 mesh 组网
网络协议
毕设源码-江学长3 小时前
计算机毕业设计java共享茶室预约微信小程序 微信小程序中的共享茶室预订平台 茶室共享预约小程序的设计与开发
java·微信小程序·课程设计