为maven项目打包时添加上svn版本号

1.在pom.xml下添加以下plugin

生产环境上跑的jar包是什么版本过段时间后真就无从得知,为之后还能查询得到,在用maven打包时添加如下的插件,打出的包将会MANIFEST.MF文件中在产生svn版本号 <bliud> <plugins> ..... <plugin> <groupId>com.google.code.maven-svn-revision-number-plugin</groupId> <artifactId>maven-svn-revision-number-plugin</artifactId> <version>1.7</version> <configuration> <verbose>true</verbose> <entries> <entry> <prefix>svn</prefix> </entry> </entries> </configuration> <executions> <execution> <id>revision</id> <phase>validate</phase> <goals> <goal>revision</goal> </goals> </execution> </executions> <dependencies> <dependency> <groupId>org.tmatesoft.svnkit</groupId> <artifactId>svnkit</artifactId> <version>1.8.10</version> </dependency> </dependencies> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>2.4</version> <configuration> <archive> <manifestEntries> <SVN-Version>${svn.revision}</SVN-Version> </manifestEntries> </archive> </configuration> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>buildnumber-maven-plugin</artifactId> <version>1.4</version> <configuration> <timestampFormat>yyyy-MM-dd HH:mm:ss.S</timestampFormat> <timestampPropertyName>buildTime</timestampPropertyName> </configuration> <executions> <execution> <id>create-timestamp</id> <phase>validate</phase> <goals> <goal>create-timestamp</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>2.4</version> <configuration> <archive> <manifestEntries> <br><SVN-Version>${svn.revision}</SVN-Version></br> <br><Build-Time>${buildTime}</Build-Time></br> </manifestEntries> </archive> </configuration> </plugin>   .... </plugins> </build>
经验分享 程序员 微信小程序 职场和发展