2011-02-02 19 views
3

如何使用內部編號插件顯示svn版本和時間戳。如何在Maven中顯示SVN版本使用內部編號插件

目前,我有以下

<plugins> 
     <plugin> 
      <groupId>org.codehaus.mojo</groupId> 
      <artifactId>buildnumber-maven-plugin</artifactId> 
      <configuration> 
       <format>At {0,time} on {0,date} : SVN Revision {1,number}</format> 
       <items> 
        <item>timestamp</item> 
        <item>buildNumber</item> 
       </items> 
       <doCheck>false</doCheck> 
       <doUpdate>false</doUpdate> 
      </configuration> 
     </plugin> 
    </plugins> 

最多顯示如下:At 8:02:51 AM on Feb 2, 2011 : SVN Revision 1

但我的SVN版本是1123,如果我註釋掉<format><items>我得到正確的SVN構建數。我如何顯示兩者?

謝謝

+0

註釋掉了什麼? – Raghuram 2011-02-02 16:49:30

+0

對不起...評論out user373201 2011-02-02 19:11:00

回答

3

隨着documentation說,如果使用特殊<item>buildNumber,它不使用SVN版本的,而是創建/讀取特殊的屬性文件。

如果您確實想要使用SVN修訂版,您需要遵循usage頁面中第一個例子中指定的配置。其他示例旨在說明不使用SVN修訂版本的用法,但本地構建編號(如持續集成構建的情況)。

0

這有什麼關係嗎?

「buildNumber插件會更新您的本地存儲庫,這是因爲'svn info'將修訂從您的本地存儲庫中獲取,並且不一定與遠程存儲庫中的修訂相同。在任何情況下創建構建之前都會進行這些更改。再次,此行爲可以通過-Dmaven.buildNumber.doUpdate = false來抑制。

http://mojo.codehaus.org/buildnumber-maven-plugin/usage.html

+0

我沒有看到任何相關性 – user373201 2011-02-03 14:04:22

1

我結束了使用buildnumber-maven-plugin無需格式參數來獲取SVN版本,並使用日期:

<properties> 
    <maven.build.timestamp.format>yyyy-MM-dd HH:mm:ss</maven.build.timestamp.format> 
    <build.date>${maven.build.timestamp}</build.date> 
</properties> 

然後,過濾後的資源:

r${buildNumber}, ${build.date} 
3

更新到buildnumber-maven-pluginversion 1.2和使用scmVersion

<items> 
    <item>timestamp</item> 
    <item>scmVersion</item> 
</items> 

大大受此SO response幫助。

相關問題