gradlew.bat(和gradlew)SSLHandShakeException [英] gradlew.bat (and gradlew) SSLHandShakeException

查看:198
本文介绍了gradlew.bat(和gradlew)SSLHandShakeException的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是新来的Gradle,并且正在浏览这里发现的这个Spring Tutorial:

http://spring.io/guides/gs/gradle/



我得到它告诉我添加此内容的部分任务:

 任务包装器(类型:包装器){
gradleVersion ='2.3'
}

我运行gradle wrapper创建gradlew和gradlew.bat文件。



试图运行这两个我得到这个异常:

 下载https://services.gradle。 org / distributions / gradle-2.3-bin.zip 

线程main中的异常javax.net.ssl.SSLHandshakeException:sun.security.val
idator.ValidatorException:PKIX路径构建失败:sun.security.provider.cert
path.SunCertPathBuilderException:在sun.security.ssl.Alerts.getSSLException(Alerts.java:192)无法找到需要请求的有效证书路径
经过验证的目标
)在sun.s
ecurity.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1884)
at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:276)
at sun.security.ssl.Handshaker.fatalSE( Handshaker.java:270)
at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker。
java:1341)
at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.jav
a:153)
at sun.security.ssl.Handshaker.processLoop(Handshaker。
at sun.security.ssl.Handshaker.process_record(Handshaker.java:804)
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1016)
at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl。
java:1312)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1339

at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1323

at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:
563)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect
(AbstractDelegateHttpsURLConnection.java:185)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLCon
nection.java:1300)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(Http
sURLConnectionImpl.java:254)
at org.gradle.wrapper.Download.downloadInternal(Download.java:56)
在org.gradle.wrapper.Download.download(Download.java:42)
在org.gradle.wrapper.Install $ 1.call(Install.java:57)
在org.gradle.wrapper。在org.gradle.wrapper.Install上安装$ 1.call(Install.java:44)
,位于org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAcc
essManager.java:65)
。 (org.gradle.wrapper.WrapperExecutor.execute)(WrapperExecutor.java:126)
(org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:56))

导致:sun.security.validator.ValidatorException:PKIX路径构建失败:
sun.security.provider.certpath.SunCertPathBuilderException:无法找到vali
d认证路径以请求目标
在sun.security.validator.PK IXValidator.doBuild(PKIXValidator.java:385)
at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.jav
a:292)
at sun.security.validator.Validator.validate( Validator.java:260)
at sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.j
ava:326)
at sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerIm
pl.java:231)
at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustMan
agerImpl.java:126)
at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker 。
java:1323)
... 19 more
导致:sun.security.provider.certpath.SunCertPathBuilderException:无法
找到要求的目标的有效证书路径
在sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCert
PathBuilder.java:196)
在java.security.cert.CertPathBuilder.build(CertPathBuilder.java:268)
at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:380)
... 25 more

我尝试通过 https://services.gradle.org/distributions/访问网络服务器gradle-2.3-bin.zip ,我没有收到任何错误。我我错过了某种配置?任何帮助,将不胜感激。感谢!

解决方案

我遇到同样的问题,但是我的症状是我的Ubuntu机器无法解析任何SSL主机,除非我特别是将它们添加到Java的证书颁发机构(cacert)文件中。



我偶然发现了这个Debian bug,并发现了一个相当直接的解决方法:remove ca-certificates-java 然后重新安装:

  sudo dpkg --purge --force-取决于ca-certificates -java 
sudo apt-get install ca-certificates-java

I做了一个 ./ gradlew clean 好的衡量标准,所有的事情都重新浮出水面。


I'm new to Gradle and was going through this Spring Tutorial found here:

http://spring.io/guides/gs/gradle/

I get to the part where it tells me to add this task:

task wrapper(type: Wrapper) {
     gradleVersion = '2.3'
}

I run gradle wrapper which creates the gradlew and gradlew.bat files.

Trying to run both of this I get this exception:

Downloading https://services.gradle.org/distributions/gradle-2.3-bin.zip

Exception in thread "main" javax.net.ssl.SSLHandshakeException: sun.security.val
idator.ValidatorException: PKIX path building failed: sun.security.provider.cert
path.SunCertPathBuilderException: unable to find valid certification path to req
uested target
        at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)
        at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1884)
        at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:276)
        at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:270)
        at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.
java:1341)
        at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.jav
a:153)
        at sun.security.ssl.Handshaker.processLoop(Handshaker.java:868)
        at sun.security.ssl.Handshaker.process_record(Handshaker.java:804)
        at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1016)
        at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.
java:1312)
        at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1339
)
        at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1323
)
        at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:
563)
        at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect
(AbstractDelegateHttpsURLConnection.java:185)
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLCon
nection.java:1300)
        at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(Http
sURLConnectionImpl.java:254)
        at org.gradle.wrapper.Download.downloadInternal(Download.java:56)
        at org.gradle.wrapper.Download.download(Download.java:42)
        at org.gradle.wrapper.Install$1.call(Install.java:57)
        at org.gradle.wrapper.Install$1.call(Install.java:44)
        at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAcc
essManager.java:65)
        at org.gradle.wrapper.Install.createDist(Install.java:44)
        at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:126)
        at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:56)
Caused by: sun.security.validator.ValidatorException: PKIX path building failed:
 sun.security.provider.certpath.SunCertPathBuilderException: unable to find vali
d certification path to requested target
        at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:385)
        at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.jav
a:292)
        at sun.security.validator.Validator.validate(Validator.java:260)
        at sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.j
ava:326)
        at sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerIm
pl.java:231)
        at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustMan
agerImpl.java:126)
        at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.
java:1323)
        ... 19 more
Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to
 find valid certification path to requested target
        at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCert
PathBuilder.java:196)
        at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:268)
        at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:380)
        ... 25 more

I try to hit the webserver at https://services.gradle.org/distributions/gradle-2.3-bin.zip and I'm not getting any sort of error. I'm I missing some sort of config? Any help would be appreciated. Thanks!

解决方案

I experienced the same problem, however my symptoms were that my Ubuntu machine couldn't resolve any SSL hosts unless I specifically added them to Java's certificate authority (cacert) file.

I stumbled upon this Debian bug, and found a fairly straight-forward resolution: remove ca-certificates-java and install it again:

sudo dpkg --purge --force-depends ca-certificates-java
sudo apt-get install ca-certificates-java

I did a ./gradlew clean for good measure, and everything sprung to life again.

这篇关于gradlew.bat(和gradlew)SSLHandShakeException的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆