maven-assembly-plugin插件可用于为maven项目打包,可指定打包的类型,下面通过一个demo来说明使用方法。
示例
项目结构:
pom配置:
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
InstrumentDemo
xyz.cicy
1.0-SNAPSHOT
4.0.0
Main
Main
http://www.example.com
UTF-8
1.8
1.8
junit
junit
4.11
test
maven-jar-plugin
3.0.2
default-jar
none
org.apache.maven.plugins
maven-assembly-plugin
3.1.1
xyz.cicy.App
jar-with-dependencies
false
make-assembly
package
single
结果
要点
maven默认生成的pom文件中build标签内嵌pluginmanagements标签,该标签需删除;
mainClass标签用于指定main方法所在的类;
descriptorRef指定打出的包的格式,这里指定为jar格式;
appendAssemblyId指定包名是否要带后缀,如为true,则上述配置打出的包如下图所示:
同样可以直接指定包名,在configuration标签内增加finalName标签,如下图所示:
打出的包如下所示:
maven默认使用maven-jar-plugin打包,因此添加maven-assembly-plugin之后进行打包将会得到两个jar文件。如**示例章节所示将maven-jar-plugin**绑定到一个不存在的phase,即可禁止打包动作