2013-07-05 4 views
0

현재 프로젝트에서 분산 관리를 제공하여 중앙 저장소에 아티팩트를 배치하고 있습니다.두 개의 다른 저장소에 이슈 배치

필자의 요구 사항은 pom 버전이 1.0-SNAPSHOT 일 때입니다. libs-snapshot에 배포해야하며 pom 버전이 1.0이면 libs-release에 배포해야합니다.

기본적으로 스냅 샷 및 해당 리포지토리의 제공 여부에 관계없이 기본적으로 배포해야합니다.

두 개의 다른 리포지토리에 내 Maven 프로젝트를 배포하고 settings.xml에서 구성하도록 구성하는 방법을 알려주십시오. 사전

답변

1

에서

덕분에 당신은 유통 관리 섹션에서 두 개의 저장소를 지정할 수 있습니다. 하나는 릴리스 용이고 다른 하나는 스냅 샷 용입니다. 버전 번호에 따라 배포를 위해 해당 리포지토리를 사용해야합니다.

settings.xml에서이 설정을 구성 할 수 없으므로 pom.xml에 구성해야합니다. See this link

<project xmlns="http://maven.apache.org/POM/4.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
         http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    ... 
    <distributionManagement> 
    <repository> 
     <uniqueVersion>false</uniqueVersion> 
     <id>corp1</id> 
     <name>Corporate Repository</name> 
     <url>scp://repo/maven2</url> 
     <layout>default</layout> 
    </repository> 
    <snapshotRepository> 
     <uniqueVersion>true</uniqueVersion> 
     <id>propSnap</id> 
     <name>Propellors Snapshots</name> 
     <url>sftp://propellers.net/maven</url> 
     <layout>legacy</layout> 
    </snapshotRepository> 
    ... 
    </distributionManagement> 
    ... 
</project> 

예 당신이 그것을에 대한 자세한 정보를 찾을 수 있습니다 POM Reference - Distribution_Management section에서 가져옵니다.

여러 프로젝트에 대한 배포 관리 섹션을 공유하려는 경우 this answer은 패키지 된 상위 프로젝트를 사용하여 회사 전체를 지정하는 방법을 보여줍니다.

관련 문제