構建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>
參考帖子
2.http://www.iteye.com/problems/80754
3.http://blog.csdn.net/woxueliuyun/article/details/9170369