2017-03-10 2 views
0

나는 Maven Release Plugin을 사용 중이며 모든 릴리스에 내 Jenkins 빌드 번호로 태그를 지정하려고합니다.Maven 릴리스 용 태그를 설정하는 방법

내가 pom.xml에서 이것을 시도했다 : 젠킨스에서도

 <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-release-plugin</artifactId> 
     <version>2.5.3</version> 
     <configuration> 
      <tagNameFormat>${env.BUILD_NUMBER}</tagNameFormat> 
     </configuration> 
     </plugin> 

과 내가 메이븐를 호출하고있을 때 :

mvn release:prepare -tag=${env.BUILD_NUMBER} 

을 그러나, 나는 점점 해요 :

Unable to tag SCM 
[ERROR] Provider message: 
[ERROR] The git-tag command failed. 
[ERROR] Command output: 
[ERROR] fatal: tag 'my-project-1.3' already exists 

무엇이 1.3의 약자인지 잘 모르겠습니다.

그럼 어떻게 릴리스에 태그를 지정할 수 있습니까? 나는 어떤 실수를하고 있는가?

답변

2

귀하의 치어가

mvn release:prepare 

는 1.3 버전을 업데이트 귀하의 경우 내 프로젝트-1.3의 자식 태그 "artifactId를 버전"을 만들 것인가 버전 1.3-SNAPSHOT에 아마, 다음의 버전을 설정 다음 반복을 위해 pom을 1.4-SNAPSHOT으로 설정하십시오.

태그를 삭제하려면 How to delete a git remote tag?을보고 mvn release를 실행하십시오. 다시 준비하십시오.

당신은 다시 1.3 스냅 샷 버전을 설정해야 할 수도 있습니다

,이는

mvn versions:set -DnewVersion=1.3-SNAPSHOT 

으로 수행 또는 당신이/리딩을 pom으로 편집 할 수 있습니다.

+0

내가'mvn release : prepare'를 여러 번하면 버전은 여전히 ​​'1.3'을 유지하며 증가하지 않습니다. 왜 그런가? – octavian

+1

@octavian git 태그 다음에 버전이 1.4-SNAPSHOT으로 변경되므로 명령이 실패하므로이 문제가 발생하지 않습니다. –

+0

'mvn release : prepare -DnewVersion = $ {env.BUILD_NUMBER}'와 같은 것을 할 수 있습니까? 여기서 BUILD_NUMBER는 Jenkins의 빌드 번호입니까? 젠킨스 빌드 번호에 따라 버전을 지정하고 싶습니다만 어떻게해야할지 모르겠습니다. – octavian

관련 문제