Gradle无法使用https://..pom> peer未经过身份验证

时间:2014-10-31 13:26:05

标签: https gradle maven-central

从gradle 2.0升级到2.1时,您可能会看到以下错误。

Could not HEAD 'https://jcenter.bintray.com/de/undercouch/gradle-download-task/1.0/gradle-download-task-1.0.pom'.
         > peer not authenticated

公平地说,这个错误不是由于gradle造成的。这是java如何处理ssl连接的问题。

我正在使用以下java版本。

java -version
java version "1.7.0_40"
Java(TM) SE Runtime Environment (build 1.7.0_40-b43)
Java HotSpot(TM) 64-Bit Server VM (build 24.0-b56, mixed mode)

您可以使用following answer导入安装证书。

我不关心https下载,http对我来说已经足够了。所以看看我的回答。

4 个答案:

答案 0 :(得分:60)

将存储库语法更改为以下

之一
repositories {
    jcenter {
        url "http://jcenter.bintray.com/"
    }
}


repositories {
    maven  {
        url "http://repo1.maven.org/maven2"
    }
}

Current (2.1) gradle docs声称

Warning: Be aware that the central Maven 2 repository is HTTP only 
and HTTPS is not supported. If you need a public HTTPS enabled 
central repository, you can use the JCenter public repository 
(see Section 51.6.3, “Maven JCenter repository”).

我认为maven central去了https。如果我使用以下语法。

repositories {
    mavenCentral()
}

我收到以下错误。

  

D:\ tools \ gradle-2.1-bin \ bin \ gradle.bat -q

     

失败:构建因异常而失败。

     
      
  • 出了什么问题:配置根项目'XXXX'时出现问题。

         
        

    无法解析配置':classpath'的所有依赖项。     无法解析de.undercouch:gradle-download-task:1.0。      要求:          :XXXX:不详     不能HEAD'https://repo1.maven.org/maven2/de/undercouch/gradle-download-task/1.0/gradle-download-task-1.0.pom'。     peer未经过身份验证

      
  •   
  • 尝试:使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获得更多日志输出。

  •   

答案 1 :(得分:10)

解决方案4“Peer Not Authenticated”,同时添加maven" jitpack.io"在应用程序的gradle.build中。

简单的解决方案是安装java 8,如果你有较低的版本。我们尝试使用Oracle java8并且它可以工作。 :)

注意:尝试了很多解决方案,这些解决方案都在stackoverflow.com上,但它们都不适用于我。

答案 2 :(得分:4)

我已将gradle包装器更新到版本2.4,方法是更改​​gradle-wrapper.properties文件:

distributionUrl=https\://services.gradle.org/distributions/gradle-2.0-bin.zip

为:

distributionUrl=https\://services.gradle.org/distributions/gradle-2.4-bin.zip

这解决了我。

答案 3 :(得分:0)

我在Travis上遇到了这个问题并且更新了gradle版本(我正在使用gradle包装器)解决了。我使用的是Gradle 2.7,然后我把它放在build.gradle

task wrapper(type: Wrapper) {
    gradleVersion = "2.12"
}