收到致命警报:protocol_version构建失败Gradle/Maven

Atu*_*tul 7 java gradle maven java-6 java-7

我的项目之一的构建开始失败,下面给出了例外情况

   > Could not resolve org.slf4j:slf4j-api:[1.6.1,).
  > Failed to list versions for org.slf4j:slf4j-api.
     > Unable to load Maven meta-data from https://repo1.maven.org/maven2/org/slf4j/slf4j-api/maven-metadata.xml.
        > Could not GET 'https://repo1.maven.org/maven2/org/slf4j/slf4j-api/maven-metadata.xml'.
           > Received fatal alert: protocol_version
Run Code Online (Sandbox Code Playgroud)

环境:

  • Java 7
  • Gradle 3.5

Atu*_*tul 25

Maven Central和Bintray宣布他们将停止对TLS v1.1及更低版本的支持.如果您使用的是Java 6或7并使用Gradle版本2.1到4.8,则会受到影响.

摇篮:

检查gradle版本

gradle --version
Run Code Online (Sandbox Code Playgroud)

如果所有这些都是真的,你必须采取行动:

  • JVM版本是Java 7u130或更低版本
  • Gradle版本介于2.1和4.8之间
  • 并且您已经声明了mavenCentral()或jcenter()的存储库{}

您可以采取以下任一操作来使用TLS v1.2 +:

建议使用前两个解决方案,因为第三个解决方案会打开可能的攻击向量.

资料来源:https://blog.gradle.org

Maven的:

如果您使用Maven,请使用下面给出的命令

mvn -Dhttps.protocols=TLSv1.2 install
Run Code Online (Sandbox Code Playgroud)