2011-11-11 2 views
1

내 프로젝트에서 사용하는 저장소가 인 인 Nexus Maven 저장소가 있습니다.Maven - 단일 저장소 *를 가리키고 있습니다

Nexus documentation마다이 문제를 해결하려면 로컬 .m2/settings.xml을 변경해야합니다.

이 문제를 해결하기 위해 내 settings.xml을 변경하는 것은 다른 개발자 컴퓨터/CI 서버에서 이식 할 수 없기 때문에 좋지 않습니다.

내가하고 싶은 일은 "내 부모를 나를 사용하는 모든 프로젝트에이 저장소 만 사용하십시오."라고 말하도록 내 글로벌 부모 pom을 변경하는 것입니다. 어떻게해야합니까? 저장소를 리포지토리에 추가 할 수 있지만 리퀘스트는 리포지토리에만 추가 할 수 있습니다. 'mirror' section of the settings file을 잘라내어 붙여 넣으려고했지만 '미러'가 허용되지 않습니다.

아이디어가 있으십니까?

감사합니다, 로이

답변

1

Nexus의 $ HOME/.m2/settings.xml 수정 방법을 조정하십시오. Nexus를 참조하는 네트워크 설정 파일이 있어야합니다. 이 설정 파일은 모든 개발자 (및 CI 서버)가 사용해야합니다.

모든 개발자가이 설정 파일을 어떻게 참조합니까?

고양이를 스키닝하는 데는 몇 가지 방법이 있습니다.

옵션 1 : Maven 명령의 별명을 지정하십시오. UNIX에
    : alias mvn=mvn -s /networked/path/to/settings.xml Windows에서
    : 오픈 mvn.bat. MVN 호출을 찾아 비슷하게을 변경

옵션 2 : 홈/설정 UNIX에서 네트워크 위치
 에 연결 : cd $HOME; rm settings.xml;ln -s /networked/path/to/settings.xml settings.xml Windows에서
    : 나는 상징적가

+0

감사합니다. Sri, 이것이 최상의 옵션이라고 생각하십시오. –

1

당신이 "표준"메이븐 모든 개발자를 위해 설치했다고 가정하면 그렇지 $M2_HOME/conf/settings.xml

을 변경할 수 있습니다, 당신은 아무것도 운 지능형 네트워크 프록시의 짧은있어 .

0

를 연결하기위한 동등한 foo는 모른다 당신의 폰에 <repositories> 엘리먼트를 설정하려고 시도 했습니까?

<project> 
    ... 
    <repositories> 
     <repository> 
     <id>my-internal-site</id> 
     <url>http://myserver/repo</url> 
     </repository> 
    </repositories> 
    ... 
</project> 

더 많은 정보와 세부 사항은 Maven Internal Repositories 페이지에서 확인할 수 있습니다.

+0

Unf. 이것은 단지 리포지터리 (repository)를 추가하는 것뿐입니다. –