2017-02-07 9 views
0

netbeans IDE를 사용하여 프로젝트를 만들었습니다. (실수하지 않으면 Ant를 사용하여 내부적으로 빌드합니다.)jenkins로 netbeans 프로젝트를 빌드 할 때 매니페스트 파일의 버전 정보를 어떻게 설정합니까?

우리가 사용하는 CI 서버는 젠킨스입니다. 생성 된 항아리에 대한 매니페스트에 버전 정보를 추가하고 싶습니다.

어떻게하면됩니까?

+0

보려면 다음을 보면 변수 환경을 사용하여 매니페스트에 대한 항목을 추가 할 수 있습니다. 환경 변수를 사용하는 또 다른 예제를 추가했습니다. – SubOptimal

답변

1

당신의 젠킨스는 어떻게 든 프로세스를 구축 프로젝트 버전 가능한 솔루션을 업데이트하는 것이 가정입니다 : nbproject\build-impl.xml

프로젝트의 버전을 추가 nbproject\project.properties에 매니페스트

<target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" ... 
    <manifest file="${tmp.manifest.file}" mode="update"> 
     <attribute name="Main-Class" value="${main.class}"/> 
     <!-- add this line below --> 
     <attribute name="Project-Version" value="${project.version}"/> 
    </manifest> 
</target> 

에 대한 항목을 추가

project.version=0.0.1-SNAPSHOT 

빌드

출력

$ unzip -p dist/CI-test.jar META-INF/MANIFEST.MF | grep Project 
Project-Version: 0.0.1-SNAPSHOT 

편집 : 환경 변수를 사용하는 또 다른 해결책. nbproject\build-impl.xml에서

PROJECT_VERSION

<target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" ... 
    <!-- enable access to environment variables --> 
    <property environment="env"/> 
    <manifest file="${tmp.manifest.file}" mode="update"> 
     <attribute name="Main-Class" value="${main.class}"/> 
     <!-- add this line below --> 
     <attribute name="Project-Version" value="${env.PROJECT_VERSION}"/> 
    </manifest> 
</target> 

빌드

# define the environment variable 
# on Windows use: set PROJECT_VERSION=0.0.2-SNAPSHOT 
PROJECT_VERSION=0.0.2-SNAPSHOT 
ant jar 

출력

$ unzip -p dist/CI-test.jar META-INF/MANIFEST.MF | grep Project 
Project-Version: 0.0.2-SNAPSHOT 
+0

감사합니다, 그것을 시도합니다. – Tim