本文介绍了通过artiFactory Remote-Simple存储库拉取Gradle DistributionUrl会导致出现javax.net.ssl.SSLHandshakeException的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我如何才能在不修改使用它的每台计算机的情况下告诉Gradle Wrapper信任我的ArtiFactory的证书,或者我是否以错误的方式通过了artiFactory?

我的artiFactory使用自签名证书,并且我的系统设置为信任该证书。在Gradle构建中,对artiFactory repos的访问对我的依赖项非常有效,但Gradlew并非如此。

为了提高生成可靠性,我们为https://services.gradle.org/distributions/gradle-...添加了一个artiFactory Simple远程存储库,但在生成时会看到以下内容:

gradle-wrapper.properties

distributionUrl=https://artifactory01.megacorp.us/remote-simple-artifactory/distributions/gradle-4.0.2-all.zip

错误

Exception in thread "main" 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

看起来Gradlew肯定是在把工匠当成中间人(本质上是这样)。

执行此操作的正确方法是什么?

推荐答案

该错误是因为运行ArtiFactory的JAVA在其受信任的根证书存储上没有受信任的远程URL的根证书。

此外,请参考以下knowledge base article关于PKIX的内容。

一个附加选项,以防您的URL末尾有一个‘/’,这可能会导致重定向到远程存储库的安全位置

这篇关于通过artiFactory Remote-Simple存储库拉取Gradle DistributionUrl会导致出现javax.net.ssl.SSLHandshakeException的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

11-03 06:56