환경설정

Nexus Repository Manager를 이용한 Maven 프로젝트 설정 가이드

wooyit 2023. 7. 7. 14:51

안녕하세요, 오늘은 Nexus Repository Manager를 사용하여 Maven 프로젝트를 설정하는 방법에 대해 다루려고 합니다. Nexus Repository Manager는 소프트웨어 컴포넌트의 중앙 저장소 역할을 하는 오픈 소스 도구로, 라이브러리, 패키지, 플러그인 등 다양한 종류의 콘텐츠를 한 곳에서 관리하고 배포하는데 도움이 됩니다.

우선, Nexus Repository Manager에 접속하여 시작해봅시다.

2023.07.03 - [환경설정] - RedHat서버에 Nexus 설치하기

 

RedHat서버에 Nexus 설치하기

Nexus는 저장소 관리자이며 JAR 컬렉션을 지속적으로 저글링하지 않도록 종속성을 프록시, 수집 및 관리할 수 있습니다. 소프트웨어를 쉽게 배포할 수 있습니다. 내부적으로 Nexus에 아티팩트를 게

lyong88.tistory.com



Nexus Repository Manager에 액세스


웹 브라우저를 열고 Nexus Repository Manager가 설치된 서버의 주소에 접속합니다. 예를 들어, 로컬에서 실행되는 경우 http://localhost:8081/로 접속하면 됩니다.

새로운 저장소 설정


1, '서버 관리 및 구성' 사이드바에서 '저장소'를 클릭합니다.


2. '저장소 생성'을 클릭합니다.


3. Maven 패키지를 호스팅할 새 리포지토리에 대해 'maven2 (호스트됨)' 유형을 선택합니다. 이 선택은 프로젝트의 빌드 시스템에 따라 달라질 수 있습니다.


4. 리포지토리 이름을 지정하고 필요에 따라 기타 설정을 구성한 다음 '리포지토리 생성'을 클릭합니다.


빌드 도구에 Nexus Repository Manager 설정하기


예를 들어 Maven을 사용하는 경우, settings.xml 파일에 Nexus Repository Manager 설정을 추가해야 합니다.

<servers>
  <server>
    <id>nexus</id>
    <username>admin</username>
    <password>admin123</password>
  </server>
</servers>

그리고 pom.xml 파일에도 Nexus Repository Manager를 가리키도록 <distributionManagement> 태그를 추가합니다.

<distributionManagement>
  <repository>
    <id>nexus</id>
    <url>http://localhost:8081/repository/maven-releases/</url>
  </repository>
  <snapshotRepository>
    <id>nexus</id>
    <url>http://localhost:8081/repository/maven-snapshots/</url>
  </snapshotRepository>
</distributionManagement>

다른 빌드 도구, 예를 들어 Gradle을 사용한다면 도구에 맞는 방식으로 설정을 변경해야 합니다.

 

eGovFramework와의 통합

 

이제 Nexus Repository Manager가 설정되었으니, 이를 eGovFramework 프로젝트의 모든 종속성에 대한 중앙 저장소로 사용할 수 있습니다. 이를 위해 프로젝트의 빌드 구성이 Nexus Repository Manager에서 종속 항목을 가져오도록 설정되어 있는지 확인하시면 됩니다.

Nexus Repository Manager를 사용하는 것은 시스템 관리 작업에 어느 정도 익숙해야 하며, 보안 역시 중요한 요소입니다. Nexus Repository Manager가 인터넷에 공개된 경우 잠재적인 공격 벡터가 될 수 있으므로 적절하게 보안 설정을 관리해야 합니다.

이상으로 Nexus Repository Manager를 이용한 Maven 프로젝트 설정에 대해 알아보았습니다. 이 글이 도움이 되셨기를 바라며, 궁금한 점이나 추가적인 질문이 있으시다면 언제든지 댓글로 남겨주세요.