通过artifactory remote simple repository拉取gradle distributionUrl会导致javax.net.ssl.SSLHandshakeException

通过artifactory remote simple repository拉取gradle distributionUrl会导致javax.net.ssl.SSLHandshakeException,artifactory,gradlew,Artifactory,Gradlew,我如何告诉gradle wrapper信任我的人工制品的证书而不修改使用它的每台机器,或者我是否以错误的方式通过人工制品 我的人工工厂使用自签名证书,我的系统设置为信任该证书。在一个gradle构建中,访问artifactory repos对于我的依赖项非常有效,但gradlew的情况则不太一样 为了提高构建的可靠性,我们为添加了一个artifactory simple remote repository…,但在构建时可以看到以下内容: gradle wrapper.properties dis

我如何告诉gradle wrapper信任我的人工制品的证书而不修改使用它的每台机器,或者我是否以错误的方式通过人工制品

我的人工工厂使用自签名证书,我的系统设置为信任该证书。在一个gradle构建中,访问artifactory repos对于我的依赖项非常有效,但gradlew的情况则不太一样

为了提高构建的可靠性,我们为添加了一个artifactory simple remote repository…,但在构建时可以看到以下内容:

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
看起来格拉德卢确实是在把人工制品当作中间人来对待(实际上是这样)


正确的方法是什么?

导致此错误的原因是运行Artfactory的JAVA在其受信任的根证书存储上没有受信任的远程URL的根证书

此外,请参考以下关于PKIX的内容

另外一个选项,如果URL末尾有一个尾随“/”,则可能导致重定向到远程存储库的安全位置