development

Maven Central에서 "치명적 경보 수신 : protocol_version"또는 "피어 인증되지 않음"이 표시되는 이유는 무엇입니까?

big-blog 2020. 7. 27. 07:16
반응형

Maven Central에서 "치명적 경보 수신 : protocol_version"또는 "피어 인증되지 않음"이 표시되는 이유는 무엇입니까?


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_HOMEJava 8을 가리 키도록 구성하십시오 .


2018 년 6 월 보안을 강화하고 최신 표준을 준수하기 위해 안전하지 않은 TLS 1.0 및 1.1 프로토콜은 더 이상 Central에 대한 SSL 연결에 지원되지 않습니다. 이는 https를 사용하여 중앙에 액세스하는 Java 6 (및 Java 7) 사용자에게만 영향을 미치며,이 수치는 사용자의 0.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 maven install에서 TLS 명령 행 매개 변수 로 "Run As"를 수행 하려면 사용중인 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 installMaven Central Repository에서 실행 하고 가져올 수 있습니다 .


IBM JDK를 사용하는 경우 설정해야 할 수도 있습니다.

com.ibm.jsse2.overrideDefaultTLS=true

https://www.ibm.com/support/knowledgecenter/SSYKE2_8.0.0/com.ibm.java.security.component.80.doc/security-component/jsse2Docs/matchsslcontext_tls.html#matchsslcontext_tls

참고 URL : https://stackoverflow.com/questions/50824789/why-am-i-getting-received-fatal-alert-protocol-version-or-peer-not-authentic

반응형