2012-06-18 7 views
1

그래서 정적 인 작업을하는 프로그램의 버전을 나타내는 String이 있습니다. 나는 왜 그것을 하나의 전역 변수로 만드는지 여러 곳에서 사용합니다.Java - 내보내기 중에 응용 프로그램 번들 버전을 설정하십시오.

질문 : 내 프로젝트를 Mac 응용 프로그램 번들로 내보낼 때 해당 문자열로 info.plist의 CFBundleVersion을 설정할 수 있습니까? 그렇지 않은 경우 내보낼 때 아무 것도 설정하거나 나중에 수동으로 수행해야합니까? 사전에

감사

답변

1

당신은 특정 파일에 변수를 내보내려면 메이븐 자원 필터링 메커니즘을 사용할 수 http://www.sonatype.com/books/mvnref-book/reference/resource-filtering-sect-description.html

나는 현재 버전을 수출하는 데 사용할

프로젝트가 내장 된 날짜 :

  1. 나는 몇 가지 변수를 포함 "D:\workspace\...\src\main\resources""release.properties"라는 이름의 파일이

    # release version 
    version=${project.version}_${svninfo.committedRevision} 
    
    # date when the current release was built 
    build_date=${buildDate} 
    
    내 pom.xml 파일에서
  2. 나는 Maven을 구문 분석하고 이것이 내가 내 보낸 후 프로그램을 실행하려면 저를 필요에 따라 값

    <resources> 
        <resource> 
        <directory>D:\workspace\...\src\test\resources</directory> 
        </resource> 
        <resource> 
        <filtering>true</filtering> 
        <directory>D:\workspace\...\src\main\resources</directory> 
        <includes> 
         <include>**/release.properties</include> 
        </includes> 
        </resource> 
        <resource> 
        <filtering>false</filtering> 
        <directory>D:\workspace\...\src\main\resources</directory> 
        <excludes> 
         <exclude>**/release.properties</exclude> 
        </excludes> 
        </resource> 
    </resources> 
    
+0

로 변수를 채울 자원의 집합을 선언 한? –

+0

아니요 Maven이 프로젝트를 빌드하고 프로세스에서 포함 된 파일로 변수를 "내 보냅니다". 그러나 나는이 방향으로 코드를 변경하기 전에 메이븐이 무엇인지, 무엇을하는지 (http://maven.apache.org/what-is-maven.html)에 대해 한 두 가지를 읽어야한다고 생각한다. 이 프로젝트와 앞으로의 모든 프로젝트에 매우 유용 할 것입니다. – Morfic

+0

고마워요! 나는 이것을 조사 할 것이다. –

관련 문제