Maven Central Repository 정책 변화(20.01.15)로 인한 Maven install 시 에러
- 작성자
- 관리자
- 작성일자
- 2020-02-06
- 조회수
- 26,673
Q 현재 표준프레임워크 프로젝트 사용 시 메이븐 빌드 및 인스톨에서 에러가 나는 현상이 발생합니다.
A
현재 표준프레임워크 프로젝트 사용 시 메이븐 빌드 및 인스톨에서 에러가 나는 현상이 발생한다면, 아래글을 참고해주시기 바랍니다.
(원문)
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.
(한글 번역문)
2020 년 1월 15일부터 Central Repository는 더 이상 일반 HTTP를 통한 안전하지 않은 통신을 지원하지 않으며, 리포지토리에 대한 모든 요청은 HTTPS를 통해 암호화되어야합니다.
즉, 2020년 1월 15일 이후로 Maven Central Repository에서 더 이상 http 관련 url을 통한 maven 접근을 허용하지 않습니다.
먼저 pom.xml에 선언된 리파지토리를 아래를 참고하여 변경하시기 바랍니다.
(기존)
http://repo1.maven.org/maven2/
(변경)
https://repo1.maven.org/maven2/
(기존)
http://repo.maven.apache.org/maven2/
(변경)
https://repo.maven.apache.org/maven2/
위의 변경에도 이슈가 발생하는 경우가 있습니다.
JDK 1.6 이하일 때 JDK의 TLS Version은 1.0 이며,
Central Repository의 경우 TLS 1.2 Version입니다.
이 경우 Received fatal alert: protocol_version 의 에러가 발생합니다.
JDK 1.7의 경우도 TLS 1.2가 사용가능하나 7u95버전 이상을 지원하며 별도의 커스텀 작업 없이는 사용이 불가능한 상태입니다.
JDK 변경이 어려워 maven install이 되지 않는다면 아래 두 가지 방법을 통해 해결이 가능합니다.
방법1. 개발환경 3.8을 사용하여 Eclipse 기동을 위한 JDK 1.8을 사용하고, 사용하는 해당 소스 compile 버전을 프로젝트 세팅을 통해 변경하시기 바랍니다.
step1.
https://www.egovframe.go.kr/EgovDevEnvRelease_300.jsp?menu=3&submenu=2&leftsub=2#
링크에서 bit 수에 맞는 개발자용 개발환경 32bit64bit(Implementation Tool) Version 3.8.0 개발환경 다운로드
step2. Eclipse JRE 설정. 1.8 이상 사용.
step3. Maven install 에러가 나는 프로젝트를 import
step4. 해당 project 우클릭 후 Java > Compiler > Compiler compliance level 변경.
JDK 버전 선택 후 경고가 나타난다면, 이클립스 Preferences > Java > Installed JREs에서 사용하는 버전에 맞는 JDK 로케이션 설정하시면 됩니다.
방법2. Eclipse 및 개발환경 변경이 어렵다면 아래 링크를 통해 압축 파일을 다운로드 받아 사용하시는 로컬 메이븐 리파지토리 또는 구축하신 메이븐 리파지토리에 압축해제 후 진행하시기 바랍니다.
https://www.egovframe.go.kr/wiki/doku.php?id=egovframework:dev:gettingstarted
Step1. 위 링크로 접근
Step2. 사용하는 표준프레임워크 버전으로 Getting Started 링크 접근
Step3. 개발환경 설치 하위 Maven 환경 설정에서 필요한 repository zip 압축 파일 다운로드. settings.xml도 제공하므로, 필요할 경우 사용
Step4. 이클립스에 설정된 maven repository에 다운로드 받은 jar 파일을 적재 후 install
(원문)
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.
(한글 번역문)
2020 년 1월 15일부터 Central Repository는 더 이상 일반 HTTP를 통한 안전하지 않은 통신을 지원하지 않으며, 리포지토리에 대한 모든 요청은 HTTPS를 통해 암호화되어야합니다.
즉, 2020년 1월 15일 이후로 Maven Central Repository에서 더 이상 http 관련 url을 통한 maven 접근을 허용하지 않습니다.
먼저 pom.xml에 선언된 리파지토리를 아래를 참고하여 변경하시기 바랍니다.
(기존)
http://repo1.maven.org/maven2/
(변경)
https://repo1.maven.org/maven2/
(기존)
http://repo.maven.apache.org/maven2/
(변경)
https://repo.maven.apache.org/maven2/
위의 변경에도 이슈가 발생하는 경우가 있습니다.
JDK 1.6 이하일 때 JDK의 TLS Version은 1.0 이며,
Central Repository의 경우 TLS 1.2 Version입니다.
이 경우 Received fatal alert: protocol_version 의 에러가 발생합니다.
JDK 1.7의 경우도 TLS 1.2가 사용가능하나 7u95버전 이상을 지원하며 별도의 커스텀 작업 없이는 사용이 불가능한 상태입니다.
JDK 변경이 어려워 maven install이 되지 않는다면 아래 두 가지 방법을 통해 해결이 가능합니다.
방법1. 개발환경 3.8을 사용하여 Eclipse 기동을 위한 JDK 1.8을 사용하고, 사용하는 해당 소스 compile 버전을 프로젝트 세팅을 통해 변경하시기 바랍니다.
step1.
https://www.egovframe.go.kr/EgovDevEnvRelease_300.jsp?menu=3&submenu=2&leftsub=2#
링크에서 bit 수에 맞는 개발자용 개발환경 32bit64bit(Implementation Tool) Version 3.8.0 개발환경 다운로드
step2. Eclipse JRE 설정. 1.8 이상 사용.
step3. Maven install 에러가 나는 프로젝트를 import
step4. 해당 project 우클릭 후 Java > Compiler > Compiler compliance level 변경.
JDK 버전 선택 후 경고가 나타난다면, 이클립스 Preferences > Java > Installed JREs에서 사용하는 버전에 맞는 JDK 로케이션 설정하시면 됩니다.
방법2. Eclipse 및 개발환경 변경이 어렵다면 아래 링크를 통해 압축 파일을 다운로드 받아 사용하시는 로컬 메이븐 리파지토리 또는 구축하신 메이븐 리파지토리에 압축해제 후 진행하시기 바랍니다.
https://www.egovframe.go.kr/wiki/doku.php?id=egovframework:dev:gettingstarted
Step1. 위 링크로 접근
Step2. 사용하는 표준프레임워크 버전으로 Getting Started 링크 접근
Step3. 개발환경 설치 하위 Maven 환경 설정에서 필요한 repository zip 압축 파일 다운로드. settings.xml도 제공하므로, 필요할 경우 사용
Step4. 이클립스에 설정된 maven repository에 다운로드 받은 jar 파일을 적재 후 install