회사에서 maven 관련 프로젝트의 빌드가 전부 깨졌다...

 

젠킨스고 뭐고 .. 이유를 전혀 모르겠었다 ..

 

갑자기 maven repo도 501을 뱉어내고 한두시간 정도의 시간을 날려먹었다

 

결론부터 얘기하면 2020년 1월 15일부로 maven central repository의 http 지원이 중단되었다

 

Answer
Effective January 15, 2020, The Central Repository no longer supports insecure communication over plain HTTP and requires that all requests to the repository are encrypted over HTTPS.

If you're receiving this error, then you need to replace all URL references to Maven Central with their canonical HTTPS counterparts:

Replace http://repo1.maven.org/maven2/ with https://repo1.maven.org/maven2/

Replace http://repo.maven.apache.org/maven2/ with https://repo.maven.apache.org/maven2/

If for any reason your environment cannot support HTTPS, you have the option of using our dedicated insecure endpoint at http://insecure.repo1.maven.org/maven2/

For further context around the move to HTTPS, please see https://blog.sonatype.com/central-repository-moving-to-https.

 

따라서 앞으로 원활한 사용을 위해서는

https 로 변경을 권장하고 만약 https를 지원하지 못하는경우는 http://insecure.repo1.maven.org/maven2/처럼 앞에 insecure를 붙여줘야한다.

 

이 이슈를 해결하면서 많은 고충을 겪었는데

 

일단 본인의 jdk가 1.8 이상일 경우 http에서 https로 변경하는건 식은죽먹기다

 

문제는 jdk가 1.6 이하일때인데 jdk의 기본 tls 버전이 1.0이고 mvn central repository의 tls 버전은 1.2이다

 

만약 jdk 1.6을 기반으로 repo에 접근하는 순간 Received fatal alert: protocol_version 라는 에러를 뱉을것이므로 본인이 jdk 변경 권한이 없다면 insecure 를 붙인 를 http://insecure.repo1.maven.org/maven2/사용하는게 좋을 것이다.

 

근데 만약! 1.7이라면 mvn install -Dhttps.protocols=TLSv1.2 이라는 옵션을 준다면 정상작동이 가능하다 jdk1.7은 기본 tls 버전이 1.1이지만 1.2도 지원이 가능하다.

 

 

결국 개삽질하고 .m2 갈아엎고 난리 부르스 치다가 결국 jdk 1.6에 http로 계속 가는거로 얘기가 되어서 그냥 그대로 했다 .. 

 

 

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

 

Why am I getting "Received fatal alert: protocol_version" or "peer not authenticated" from Maven Central?

I'm getting the below errors when connecting to Maven Central / https://repo1.maven.org after June 18th 2018. Received fatal alert: protocol_version or Received fatal alert: peer not authenticated

stackoverflow.com

 

 

 

출처 : https://stackoverflow.com/questions/59763531/maven-dependencies-are-failing-with-501-error

 

Maven dependencies are failing with 501 error

Recently maven build jobs running in Jenkins are failing with the below exception saying that they could not pull dependencies from Maven Central and should use HTTPS. I am not sure how to change the

stackoverflow.com

https://support.sonatype.com/hc/en-us/articles/360041287334

 

Central 501 HTTPS Required

Question As of January 15, 2020 I am receiving the following responses upon making requests to The Central Repository: Requests to http://repo1.maven.org/maven2/ return a 501 HTTPS Required status ...

support.sonatype.com

 

+ Recent posts