1. 程式人生 > >Maven之使用SVN版本號

Maven之使用SVN版本號

1.有時候我們在專案中需要給js,css加版本引數來避免瀏覽器快取,比如

Html程式碼  收藏程式碼
  1. <script type="text/javascript" src="/js/jquery-1.8.2.min.js?v=${v?if_exists}"></script>  

 這個時候,我們可以使用專案的svn版本號來作為引數(時間戳也是一種選擇)。那麼我們如何使用maven在打包時自動獲取svn版本號呢?可以使用maven-svn-revision-number-plugin來解決這個問題。

2.在pom.xml中加入如下內容:

Xml程式碼  收藏程式碼
  1. <
    plugin>  
  2.     <groupId>com.google.code.maven-svn-revision-number-plugin</groupId>  
  3.     <artifactId>maven-svn-revision-number-plugin</artifactId>  
  4.     <version>1.7</version>  
  5.     <configuration>  
  6.         <verbose>true</verbose>  
  7.         <entries
    >  
  8.             <entry>  
  9.                 <prefix>prefix</prefix>  
  10.                 <depth>empty</depth>  
  11.             </entry>  
  12.         </entries>  
  13.     </configuration>  
  14.     <executions>  
  15.         <execution>  
  16.             <phase>validate</
    phase>  
  17.             <goals>  
  18.                 <goal>revision</goal>  
  19.             </goals>  
  20.         </execution>  
  21.     </executions>  
  22.     <dependencies>  
  23.         <dependency>  
  24.             <groupId>org.tmatesoft.svnkit</groupId>  
  25.             <artifactId>svnkit</artifactId>  
  26.             <version>1.7.8</version>  
  27.         </dependency>  
  28.     </dependencies>  
  29. </plugin>  
Xml程式碼  收藏程式碼
  1. <resources>  
  2.     <resource>  
  3.         <directory>src/main/resources</directory>  
  4.         <filtering>true</filtering>  
  5.     </resource>  
  6. </resources>  

 3.在專案的src/main/resources目錄下有web.properties檔案

Java程式碼  收藏程式碼
  1. js.css.v=${prefix.revision}  

 4.當使用maven打包專案或者在外掛中執行時,${prefix.revision}會被svn版本號代替