maven 打包java项目_如何使用maven打包java项目?

maven-assembly-plugin插件可用于为maven项目打包,可指定打包的类型,下面通过一个demo来说明使用方法。

示例

项目结构:

maven 打包java项目_如何使用maven打包java项目?_第1张图片

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 打包java项目_如何使用maven打包java项目?_第2张图片

要点

maven默认生成的pom文件中build标签内嵌pluginmanagements标签,该标签需删除;

mainClass标签用于指定main方法所在的类;

descriptorRef指定打出的包的格式,这里指定为jar格式;

appendAssemblyId指定包名是否要带后缀,如为true,则上述配置打出的包如下图所示:

maven 打包java项目_如何使用maven打包java项目?_第3张图片

同样可以直接指定包名,在configuration标签内增加finalName标签,如下图所示:

maven 打包java项目_如何使用maven打包java项目?_第4张图片

打出的包如下所示:

maven 打包java项目_如何使用maven打包java项目?_第5张图片

maven默认使用maven-jar-plugin打包,因此添加maven-assembly-plugin之后进行打包将会得到两个jar文件。如**示例章节所示将maven-jar-plugin**绑定到一个不存在的phase,即可禁止打包动作

你可能感兴趣的:(maven,打包java项目)