找不到 PropertySource:Spring Cloud 配置 URL 的 PKIX 路径构建失败

Posted

技术标签:

【中文标题】找不到 PropertySource:Spring Cloud 配置 URL 的 PKIX 路径构建失败【英文标题】:Could not locate PropertySource: PKIX path building failed for spring cloud config URL 【发布时间】:2020-03-01 15:46:55 【问题描述】:

我在我的 spring boot 项目中使用 spring-cloud-config,但是当我尝试将我的应用程序作为 spring boot 应用程序运行时,它给出了以下异常

找不到 PropertySource:GET 请求时出现 I/O 错误 “https://spring-cloud-config-orgname.com/annuity-application-api/dev/master”: sun.security.validator.ValidatorException:PKIX 路径构建失败: sun.security.provider.certpath.SunCertPathBuilderException:无法 找到请求目标的有效认证路径;嵌套异常是 javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException:PKIX 路径构建失败: sun.security.provider.certpath.SunCertPathBuilderException:无法 找到请求目标的有效认证路径

我已经使用以下命令在 java 信任库中添加了证书

keytool -importcert -trustcacerts -file C:\Users\patilp1\temp\sslcerts\spring-cloud-config.cer -alias "spring-cloud-config"

我的应用程序仍然给出同样的异常。知道这背后的原因是什么,因为我已经在位于的 java 信任库中添加了证书

C:\Program Files\Java\jdk1.8.0_192\jre\lib\security

【问题讨论】:

【参考方案1】:

试试这个: 1. 创建一个包含配置服务器证书的密钥库/信任库 2.添加以下VM参数:

-Djavax.net.ssl.keyStore=<location of your keystore>
-Djavax.net.ssl.keyStorePassword=<your storepass>
-Djavax.net.ssl.trustStore=<location of your truststore>
-Djavax.net.ssl.trustStorePassword=<your storepass>
-Djavax.net.ssl.trustStoreType=jks

希望这会有所帮助。

【讨论】:

以上是关于找不到 PropertySource:Spring Cloud 配置 URL 的 PKIX 路径构建失败的主要内容,如果未能解决你的问题,请参考以下文章

微服务读取不到config配置中心配置信息,Spring Boot无法找到PropertySource:找不到标签Could not locate PropertySource: label not

Jar 中的 @PropertySource 用于类路径上的外部文件

Spring注解PropertySource

@Import 覆盖 Spring @PropertySource

Spring——15使用@PropertySource加载配置文件

[spring] @PropertySource