无法传输工件(https://repo.maven.apache.org/maven2):收到致命警报:protocol_version – >

我是Maven的新手,并尝试在Maven中设置我的第一个项目,但是当我在Eclipse中执行“Run as – > Maven install”时收到以下错误消息。 下面是我的settings.xml和pom.xml

将Settings.xml

 C:\Users\Iam\.m2\repository     central http://central.maven.org/maven2/        

的pom.xml

   4.0.0 com.mytest MySpringBootMaven war 0.0.1-SNAPSHOT  org.springframework.boot spring-boot-starter-parent 1.5.11.RELEASE     org.springframework.boot spring-boot-maven-plugin   org.apache.maven.plugins maven-war-plugin 2.5  Test.war      

错误信息:

 at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356) Caused by: org.eclipse.aether.resolution.ArtifactDescriptorException: Failed to read artifact descriptor for org.springframework.boot:spring-boot-maven-plugin:jar:1.5.11.RELEASE at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.loadPom(DefaultArtifactDescriptorReader.java:302) at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.readArtifactDescriptor(DefaultArtifactDescriptorReader.java:218) at org.eclipse.aether.internal.impl.DefaultRepositorySystem.readArtifactDescriptor(DefaultRepositorySystem.java:287) at org.apache.maven.plugin.internal.DefaultPluginDependenciesResolver.resolve(DefaultPluginDependenciesResolver.java:103) ... 27 more Caused by: org.eclipse.aether.resolution.ArtifactResolutionException: Could not transfer artifact org.springframework.boot:spring-boot-maven-plugin:pom:1.5.11.RELEASE from/to central (https://repo.maven.apache.org/maven2): Received fatal alert: protocol_version at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:444) at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:246) at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifact(DefaultArtifactResolver.java:223) at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.loadPom(DefaultArtifactDescriptorReader.java:287) ... 30 more Caused by: org.eclipse.aether.transfer.ArtifactTransferException: Could not transfer artifact org.springframework.boot:spring-boot-maven-plugin:pom:1.5.11.RELEASE from/to central (https://repo.maven.apache.org/maven2): Received fatal alert: protocol_version 

如何解决Received致命警报:protocol_version? 我的java版本是1.7,maven版本是3.3.3

Sonatype 不再支持TLSv1.1及更低版本 (生效日期为2018年6月18日)。 我的猜测是你正在使用TLSv1.1协议或以下。

我列出的文档为您提供了4个选项:

  1. 升级Java运行时,例如使用OpenJDK构建或Oracle支持
  2. 通过添加-Dhttps.protocols = TLSv1.2来配置Java运行时以启用TLS 1.2
  3. 使用使用支持TLS 1.2的Java版本的存储库管理器
  4. 恢复为http,直到您可以执行上述修复步骤之一。

我通过使用-Dhttps.protocols = TLSv1.2作为VM参数来自行修复它。

最简单的解决方案是配置JVM运行时参数。 在eclipse上,你可以这样做:

转到Windows>首选项> java>已安装的JRE单击您用于项目的Intalled JRE / JDK

单击右侧的“编辑”,并在默认VM参数输入字段中添加-Dhttps.protocols=TLSv1.2

看截图:

截图

我在.m2目录中设置我的settings.xml文件就像在这里一样: https : //github.com/alipay/sofa-rpc/pull/190/files

然后exec mvn install并开始下载所有依赖项。 我之前没有过settings.xml文件,而且我没有使用任何代理。 希望它对某人有帮助。

PD。 我有jdk 1.7和Maven 3.3.9

对于永久解决方案(在Java 7中大多需要) – 在构建目录(从中执行mvn命令)中添加目录:

.mvn (cmd mkdir .mvn

并在其中创建文件

jvm.config

并列出以下行:

-Dhttps.protocols=TLSv1.2