2017-07-14 121 views
0

我想趕上JASIG的CAS服務器。我已經成功地爲Tomcat(8.5是)生成了密鑰,將密鑰導入到Java密鑰存儲中,並正在嘗試使用內置的構建腳本dev-build-no-tests.sh構建從GitHub下載的CAS項目。我無法通過的是這一步,因爲我運行構建腳本時引發的異常。無法建立CAS服務器

Downloading https://services.gradle.org/distributions/gradle-2.10-bin.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 
    at sun.security.ssl.Alerts.getSSLException(Alerts.java:192) 
    at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1949) 
    at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:302) 
    at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:296) 
    at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1514) 
    at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:216) 
    at sun.security.ssl.Handshaker.processLoop(Handshaker.java:1026) 
    at sun.security.ssl.Handshaker.process_record(Handshaker.java:961) 
    at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1062) 
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375) 
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403) 
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387) 
    at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:559) 
    at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185) 
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1546) 
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1474) 
    at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:254) 
    at org.gradle.wrapper.Download.downloadInternal(Download.java:58) 
    at org.gradle.wrapper.Download.download(Download.java:44) 
    at org.gradle.wrapper.Install$1.call(Install.java:61) 
    at org.gradle.wrapper.Install$1.call(Install.java:48) 
    at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:65) 
    at org.gradle.wrapper.Install.createDist(Install.java:48) 
    at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:128) 
    at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61) 
Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target 
    at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:387) 
    at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:292) 
    at sun.security.validator.Validator.validate(Validator.java:260) 
    at sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:324) 
    at sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:229) 
    at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:124) 
    at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1496) 
    ... 20 more 
Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target 
    at sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:141) 
    at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:126) 
    at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:280) 
    at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:382) 
    ... 26 more 

這裏有什麼問題?我究竟做錯了什麼?我試圖找到一個線索,但目前爲止沒有好處。 據我所知,這似乎是一個問題,當試圖下載這個gradle版本。我不明白的是爲什麼會發生這種情況,以及如何解決這個問題。

+0

你需要添加一個證書到你的密鑰庫我猜 – Jens

+0

它是否是'https:// services.gradle.org'的證書? –

+0

我不確定。但我想是的 – Jens

回答

0

您要下載的不信任列表

你可以嘗試2只選擇一個域名,

  1. 與HTTP URL,而不是HTTPS URL
  2. 你可以嘗試解決此問題的方法是從 services.gradle.org(.cer文件)下載證書,然後將它們安裝到您的 java信任庫中。請確保您下載此域的任何父證書 並安裝它們。一旦你這樣做,你應該能夠繼續前進。