WAR插件用于将汇集的Java类文件、依赖的jar文件和资源文件等一起打包以构建war包文件。
WAR插件当前的最新版本是2015.1发布的2.6。
1. WAR插件提供了4个goal:
- war:war,对于POM中打包类型为war的项目,Maven的package 阶段默认执行该goal,从而构建出一个war文件。
- war:exploded,通常用于开发阶段,创建一个包含所有war文件内容的解压缩的webapp目录(默认位于target/目录),以提高测试的效率。
- war:inplace,类似于war:explode,区别只在于生成的webapp目录位于Web应用的源代码目录,即默认的src/main/webapp。
- war:manifest,生成Manifest文件,默认位于Web应用的源代码目录。
2.该插件的4种用法:
1) 对于POM打包类型为war的Maven项目,执行mvn package命令,该命令等价于执行mvn compile war:warPOM配置示例如下:
- <project>
- …
- <groupId>com.example.projects</groupId>
- <artifactId>documentedproject</artifactId>
- <packaging>war</packaging>
- <version>1.0-SNAPSHOT</version>
- <name>Documented Project</name>
- <url>http://jdsu.com</url>
- …
- </project>
<project>
...
<groupId>com.example.projects</groupId>
<artifactId>documentedproject</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<name>Documented Project</name>
<url>http://jdsu.com</url>
...
</project>
2) mvn war:war
该命令必须在mvn compile之后执行,因为需要mvn compile编译Java源代码并复制资源文件
3) mvn compile war:exploded
4) mvn compile war:inplace
参考文献:
http://maven.apache.org/plugins/maven-war-plugin/