[개발툴]NEXUS Repository

2021. 2. 16. 17:39카테고리 없음

1. Nexus 소개

 

Maven에서 사용 할 수 있는 Repository 입니다.

장점으로 외부에서 dependency를 끌어오는 수고를 덜고local nexus proxy(cache)로 사용함으로써 빠르게 라이브러리를 끌어 올 수 있고,
개발팀에서 사용하는 공용 라이브러리를 local nexus에 배포해서 팀간에 공유할 수 있습니다.

사용자 계정을 통해서 repository에 대한 접근 정책을 정의할 수 있다.

출처: https://kimseunghyun76.tistory.com/390 [하루에 하나씩.....]

 

사설 리포지토리가 왜 필요한가?

  • 회사/단체의 화이트 리스트로 인해 외부 리포지토리에 접속하기 어려운 경우 프록시 역활.
  • 특히나 비상시 외부 인터넷이 느리거나 리포지토리가 다운되는등 여러 상황에서도 빠르게 받을 수 있다.
  • 현재 메이븐에 올라와 있지 않은 자료들은 효율적으로 관리하기 위하여.
  • 한번 다운로드 받은 디펜던시는 로컬에 저장되지만 컴퓨터를 포멧하거나 동료가 시작할때 설정을 해야한다.
  • 서버에도 동일한 설정들을 해줘야함으로 서버 구조가 복잡할 수록 잔업도 늘어난다.
  • 예외 파일로 인한 설정이 줄어들어 전체적인 일관성이 증가한다.
출처 : gs.saro.me/dev?tn=466

메이븐을 사용해도 

기존에 pom.xml에다가 jar파일을 maven repository에서 하나하나 넣어서 다운받아 관리했다.

회사에서는 이런 관리가 번거롭고 코드관리가 힘들수 있어 넥서스레파지토리로 관리를 한다고한다.

 

 

사용법

 

<repositories>
	<repository>
		<id>적당한아이디</id>
		<name>적당한이름</name>
		<!-- central 이 아닌 public 이다.!! public 이 모두 대행한다 -->
		<url>호스트/content/groups/public/ 예)http://localhost:8081/content/groups/public/</url>
		<releases><enabled>true</enabled></releases>
		<snapshots><enabled>true</enabled></snapshots>
	</repository>
</repositories>