2009-03-17 2 views

답변

25

받는다는 빌드 번호에서 사용을 플러그인은 갈 길입니다. 그것을 사용하는 방법의 예는 여기에 있습니다 :

http://www.mojohaus.org/buildnumber-maven-plugin/usage.html

당신은 SVN이 매니페스트에 번호를 커밋 인쇄 할 받는다는 항아리 플러그인과 함께 이것을 사용합니다.

이것은 SVN 커밋 번호가 포함 된 파일을 사용하는 것보다 나은 해결책입니다. SVN 커밋 번호가 포함 된 파일을 사용하는 것이 실제 필요한 것보다 더 많은 움직이는 부분을 추가하기 때문입니다. 당신은 파괴를 사용하는 경우

+4

매니페스트에 저장된 버전 번호를 검색하는 코드를 포함하여 http://apollo.ucalgary.ca/tlcprojectswiki/index.php/Public/Project_Versioning_-_Best_Practices#Build_Versioning에서 유용한 추가 정보를 발견했습니다. –

+1

ucalgary 링크가 작동하지 않습니다. 웨이 백 기기 링크 : http://web.archive.org/web/20101021043408/http://apollo.ucalgary.ca/tlcprojectswiki/index.php/Public/Project_Versioning_-_Best_Practices – Snekse

1

당신은 어떤 플랫폼을 사용하고 있는지 말하지 않고, 당신은 내가 익숙하지 않은 것에 대해 용서할 것입니다. 외부 프로그램을 호출 할 수 있다고 가정하고,이를 수행하는 방법을 알고 있습니다.

Unix 플랫폼의 경우 svnversion 프로그램을 사용하고 지정된 작업 경로의 버전 번호 인 출력을 파일로 파이프하여 파일을 볼 수 있도록 웹 페이지에 통합 할 수 있습니다 적당한.

svnversion --help 

은 세부 사항을 보여줍니다.

Windows 인 경우 TortoiseSVN 클라이언트를 사용하는 경우 SubWCRev라는 Windows 명령 줄 프로그램이 번들로 제공됩니다. 이 유틸리티는 사용중인 svn 저장소의 다양한 세부 정보를 제공하는 텍스트 파일의 매크로를 확장합니다. 출력 형식을 제어 할 수 있습니다. 모두 매우 편리합니다. 이에 대한 도움말 파일은 여기에 있습니다 : 당신이 SVN 명령 줄 응용 프로그램, 다음과 같은 코드를 사용할 수 있습니다 제공 http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-subwcrev.html

4

- 우리가 (약간 변경) 우리의 프로젝트

<build> 
    <plugins> 
    <plugin> 
     <artifactId>maven-antrun-plugin</artifactId> 
     <executions> 
     <execution> 
      <phase>generate-resources</phase> 
      <goals> 
      <goal>run</goal> 
      </goals> 
      <configuration> 
      <tasks> 
       <mkdir dir="${project.build.directory}/generated-web-resources/svn"/> 
       <exec dir="${basedir}" executable="svn" 
        failifexecutionfails="false" 
        output="${project.build.directory}/generated-web-resources/svn/svnver.jsp"> 
       <arg line="info"/> 
       </exec> 
      </tasks> 
      </configuration> 
     </execution> 
     </executions> 
    </plugin> 
    <plugin> 
     <artifactId>maven-war-plugin</artifactId> 
     <configuration> 
     <webResources> 
      <resource> 
      <directory>${project.build.directory}/generated-web-resources/svn</directory> 
      </resource> 
     </webResources> 
     <warSourceExcludes>**/_svn/**</warSourceExcludes> 
     </configuration> 
    </plugin> 
    </plugins> 
</build> 
7

, 당신은 받는다는 특성

http://code.google.com/p/maven-svn-revision-number-plugin/

나는 MANIFEST에 SVN 개정을 추가 항아리 플러그인이 결합으로 SVN 개정 번호를 사용할 수 있도록하기 위해이 플러그인을 사용할 수 있습니다. 우리의 병과 전쟁을위한 MF 파일.