【技術貼】Maven打包文件增加時間后綴


 

構建war包,或者jar包的,時候,maven會自動增加一個版本號和時間放在jar包后面比如poi-3.9-20131115.jar這樣子,但是我自己打war包,總是給我生成一個快照的后綴report-0.0.1-SNAPSHOT.war這個樣子,所以我想干掉這個后綴,或者說我什么都不用,那么本篇教程圍繞3個問題展開。

1.后綴什么都不加,需要在build節點下跟上一個<finalName>節點即可。生成的war包或者jar包不含任何雜余。

打包結果:report.war

<build>
        <finalName>report</finalName>
 </build>

 

2. 后綴跟上時間戳,這個需要在<finalName>節點下使用maven的內置變量maven.build.timestamp,會生成帶時間戳的war包

打包結果:report-20131115-1450.war

<build>
    <finalName>${project.artifactId}-${maven.build.timestamp}</finalName>
</build>

還有一種方法,使用maven的插件,buildnumber-maven-plugin

<finalName>${project.artifactId}-${project.version}-${buildNumber}</finalName>
<plugin>
  <groupId>org.codehaus.mojo</groupId>
  <artifactId>buildnumber-maven-plugin</artifactId>
  <version>1.0-beta-4</version>
  <executions>
    <execution>
      <phase>initialize</phase>
      <goals>
        <goal>create</goal>
      </goals>
    </execution>
  </executions>
  <configuration>
    <doCheck>false</doCheck>
    <doUpdate>false</doUpdate>
    <revisionOnScmFailure/>
    <format>{0,date,yyyyMMdd}</format>
    <items>
      <item>timestamp</item>
    </items>
  </configuration>
</plugin>

 

3.后綴跟上快照號

在dependencies節點之前的version節點下寫入即可。

<groupId>com.riambsoft</groupId>
    <artifactId>report</artifactId>
    <packaging>war</packaging>
    <!-- 快照
    <version>0.0.1-SNAPSHOT</version>-->
<!-- 后綴時間 -->
    <version>${maven.build.timestamp}</version>
    <name>report</name>
    <url>http://www.riambsoft.com</url>
    <dependencies>

 

參考帖子 

1.http://www.dewen.org/q/7578

2.http://www.iteye.com/problems/80754

3.http://blog.csdn.net/woxueliuyun/article/details/9170369

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM