首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Maven POM 配备技巧(二)

2012-09-01 
Maven POM 配置技巧(二)一、有时web工程的静态文件(image/css/js)希望独立部署,需要针对静态内容打包。可通

Maven POM 配置技巧(二)

一、有时web工程的静态文件(image/css/js)希望独立部署,需要针对静态内容打包。可通过以下配置:view plain<plugin>      <groupId>org.apache.maven.plugins</groupId>      <artifactId>maven-assembly-plugin</artifactId>      <version>2.2</version>      <executions>        <execution>          <id>make-assembly</id>          <phase>package</phase>          <goals>            <goal>single</goal>          </goals>          <configuration>            <descriptors>              <descriptor>src/assemble/statics-zip.xml</descriptor>            </descriptors>          </configuration>        </execution>      </executions>  </plugin>   当然,另外还需手工编写相应的src/assemble/statics-zip.xml文件,以配置zip文件中的内容:view plain<?xml version="1.0" encoding="UTF-8"?>  <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">      <id>statics</id>      <formats><format>zip</format></formats>      <includeBaseDirectory>false</includeBaseDirectory>      <fileSets>          <fileSet>            <directory>${basedir}/src/main/webapp/statics-gen</directory>            <outputDirectory>statics</outputDirectory>          </fileSet>      </fileSets>  </assembly>     二、 当web工程的静态内容独立部署时,相应的war中可以不再需要包含相应的静态内容。可通过以下配置排除: view plain    <plugin>          <groupId>org.apache.maven.plugins</groupId>          <artifactId>maven-war-plugin</artifactId>          <version>2.1.1</version>  <configuration>    <packagingExcludes>statics/**,statics-gen/**</packagingExcludes>  </configuration>      </plugin>     三、有时希望在jar/war包中,写入当前的SVN revision ,以准确对应SVN中的版本。可先通过以下配置获取当前SVN 版本号: view plain    <plugin>          <groupId>com.google.code.maven-svn-revision-number-plugin</groupId>          <artifactId>maven-svn-revision-number-plugin</artifactId>          <version>1.6</version>  <executions>      <execution>          <goals>              <goal>revision</goal>          </goals>      </execution>  </executions>  <configuration>      <entries>          <entry>              <prefix>SVN</prefix>          </entry>      </entries>  </configuration>      </plugin>   再将SVN版本号写入war包中: view plain    <plugin>          <groupId>org.apache.maven.plugins</groupId>          <artifactId>maven-war-plugin</artifactId>          <version>2.1.1</version>  <configuration>    <archive>      <manifestEntries>        <SVN-Revision>${SVN.revision}</SVN-Revision>      </manifestEntries>    </archive>  </configuration>      </plugin>  

热点排行