2018 년 6 월 18 일 이후 Maven Central / https://repo1.maven.org에 연결할 때 아래와 같은 오류가 발생합니다 .
Received fatal alert: protocol_version
또는
Received fatal alert: peer not authenticated
2018 년 6 월 18 일 이후 Maven Central / https://repo1.maven.org에 연결할 때 아래와 같은 오류가 발생합니다 .
Received fatal alert: protocol_version
또는
Received fatal alert: peer not authenticated
답변:
해결 방법 1 : Java 7 구성
명령 행에서 Java 특성으로 TLS 1.2 프로토콜을 사용 가능하게해야합니다.
mvn -Dhttps.protocols=TLSv1.2 install
install
목표의 예일뿐입니다
이 방법으로 같은 오류를 ant
해결할 수 있습니다
java -Dhttps.protocols=TLSv1.2 -cp %ANT_HOME%/lib/ant-launcher.jar org.apache.tools.ant.launch.Launcher
해결 방법 2 : Oracle Advanced Support와 함께 Java 7 사용
Java 7 버전을 업데이트하여 문제를 해결할 수도 있습니다. 그러나 마지막으로 사용 가능한 버전 ( 7u80
)으로 문제가 해결되지 않습니다. Oracle Advanced Support (이전의 Java for Business)와 함께 제공된 업데이트를 사용해야합니다.
해결책 3 : 대신 Java 8 사용
$JAVA_HOME
Java 8을 가리 키도록 구성하십시오 .
sbt -Dhttps.protocols=TLSv1.2 instal
-Dhttps.protocols=TLSv1.2
. 따라서 SBT에서 Java 매개 변수를 전달하는 방법을 찾아야합니다.
2018 년 6 월 보안을 강화하고 최신 표준을 준수하기 위해 안전하지 않은 TLS 1.0 및 1.1 프로토콜은 더 이상 Central에 대한 SSL 연결에 지원되지 않습니다. 이는 https를 사용하여 중앙에 액세스하는 Java 6 (및 Java 7) 사용자에게만 해당됩니다.이 통계는 사용자의 .2 % 미만입니다.
자세한 내용과 해결 방법은 다음 블로그 및 FAQ를 참조하십시오. https://blog.sonatype.com/enhancing-ssl-security-and-http/2-support-for-central
다음 명령이 도움이되었습니다 (mvn을 실행하기 전에 bash에서 실행)
export MAVEN_OPTS=-Dhttps.protocols=TLSv1,TLSv1.1,TLSv1.2
@ v.ladynev가 말했듯이 JDK 1.7에서 작동합니다.
Eclipse를 사용하여 "Run As"을 수행 할 수 있도록 maven install
에서 TLS 명령 행 매개 변수 하려면 사용중인 JDK를 구성하십시오.
창 > 환경 설정 > Java > 설치된 JRE를 통해 대화 상자를여십시오. .
그런 다음 사용중인 것을 강조 표시하고 ( JRE가 아닌 JDK 이어야 함 ) 편집을 클릭 하십시오 . "기본 VM 인수"필드에서 값을 채우십시오 . 아래 그림과 같이:-Dhttps.protocols=TLSv1,TLSv1.1,TLSv1.2
프로젝트를 정리 한 다음 (선택 사항 일 수 있음) a을 다시 실행하십시오 maven install
.
죄송합니다. 오류 메시지가 나타나는 이유를 모르겠습니다. 그러나 Java 7 및 Windows 10을 사용하고 있으며 JAVA_HOME
환경 변수 를 변경하여 일시적으로 Java 8을 사용하는 것이 해결책이었습니다 . 그런 다음 mvn install
Maven Central Repository에서 실행 하고 가져올 수 있습니다 .
IBM JDK를 사용하는 경우 설정해야 할 수도 있습니다.
com.ibm.jsse2.overrideDefaultTLS=true
jdk7-u221을 사용하여 JCE (Java Cryptography Extension)를 설치해야했습니다.