0. 개요

회사에서 신규 프로젝트에 투입되어, 개발 환경을 구축했다.

환경 구성 중 문제가 발생했다.

 

1. 프로젝트 환경

-intellij: 개발 Tool로 intellij 사용

-AWS CodeCommit: 프로젝트에서 사용하는 소스 저장소

-CodeArtifact: 프로젝트에서 사용하는 패키지 저장소(CodeArtifact 설정 중 문제 발생)

 

2. 문제 발생

-CodeCommit에서 프로젝트 소스를 다운받은 후(git 사용), 소스가 정상적으로 작동하려면 CodeArtifact와 연동(Credential 통한 인증)이 정상적으로 수행이 되어야 한다.

-CodeArtifact 인증은 다음과 같이 이루어진다.

 

(1)CodeArtifact 플러그인 설치

 

(2)Generate AWS CodeArtifact Credentials

아래 순서로, Maven settings file을 지정하여 Credential을 생성한다.

settings.xml 파일이 기존이 있어야 한다.

해당 파일 생성 방법은 https://docs.aws.amazon.com/codeartifact/latest/ug/maven-mvn.html

위 링크를 참조하면 된다.

Generate Credentials를 하면

 

위에서 설정한 settigns.xml 파일에 Generate 된 토큰 값이 password에 자동으로 세팅되는 방식이다.

 

(3)문제 발생

위 설정을 마친 후, 이와 같은 에러가 발생했다.

authentication failed for ~~~ status: 401 Unauthorized

이 문제를 해결하지 못해서 며칠을 헤맸다.

 

3. 해결

(1)원인: intellij의 Maven 기본 설정 파일과, CodeArtifact 설정 경로가 달라서 생긴 문제

intellij의 [Preferences] - [Build] - [Build Tools] - [Maven] 항목을 보면, Maven home path 가 지정되어 있다.

 

이 값이, 위 CodeArtifact Token Generate 할 시 설정한 settings.xml 파일 경로와 달라 생긴 문제이다.

Generate Token 시, 토큰 값이 설정이 되었는데 Maven 기본 경로에 있는 settings.xml 파일에는 토큰 정보가 없기 때문에 생긴 문제.

 

(2)해결

intellij의 Maven 기본 경로를, CodeArtifact 경로와 동일하게 맞춰주면 된다.

 

i)intellij Maven 기본 경로

 

ii)CodeArtifact Maven settings file 경로

 

해결!

 

-끝-

+ Recent posts