Maven中利用assembly插件打包jar包

网友投稿 565 2022-09-05


Maven中利用assembly插件打包jar包

在maven中有几种方法打包项目,在之前的一篇博客中【java】打包Jar包并用脚本执行,已经介绍了怎么在没有maven插件的情况下,怎么打包项目,并执行的。

而本篇则是在上一篇文章【Maven】Maven系列(一)——环境安装配置和新建maven项目之后,总结一下怎么使用maven插件进行打包项目。maven中有多种插件提供了打包功能,分别是maven-jar-plugin(用来打包成jar包),maven-war-plugin(打包成war包)、maven-assembly-plugin。这里只介绍怎么使用assembly插件打包项目成jar包。

主要有以下几个步骤(前提是IDE中已经有maven插件了)

1,配置pom.xml文件

2,执行maven命令中的assembly:assembly命令进行打包

3,将对应的资源文件复制出来放到同生成的jar包文件同目录下,以便运行jar包时候可以找到相应的资源。

4,利用java -jar命令运行jar包

1,在项目的pom.xml文件中添加一个标签

maven-assembly-plugin

com.hey.main.Main

jar-with-dependencies

如下是一个完整的pom.xml文档:

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

ShareBike

ShareBike

0.0.1-SNAPSHOT

jar

src

src

**/*.java

maven-assembly-plugin

main.PushTrailVerticle

jar-with-dependencies

maven-compiler-plugin

3.5.1

1.8

1.8

io.vertx

vertx-core

3.4.2

io.vertx

vertx-web

3.4.2

c3p0

c3p0

0.9.1.2</version>

ojdbc

ojdbc

oracle12c

io.vertx

vertx-web-client

3.4.2

com.vividsolutions

jts

1.14

com.google.protobuf

protobuf-java

3.3.0

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

ShareBike

ShareBike

0.0.1-SNAPSHOT

jar

src

src

**/*.java

maven-assembly-plugin

main.PushTrailVerticle

jar-with-dependencies

maven-compiler-plugin

3.5.1

1.8

1.8

io.vertx

vertx-core

3.4.2

io.vertx

vertx-web

3.4.2

c3p0

c3p0

0.9.1.2</version>

ojdbc

ojdbc

oracle12c

io.vertx

vertx-web-client

3.4.2

com.vividsolutions

jts

1.14

com.google.protobuf

protobuf-java

3.3.0

上面的mainClass标签中的内容替换成自己的main函数所在的类,前面要包含package名字,也就是package_name.MainClassName。

2,执行打包命令

2.1 右击选中项目的properties–>run as–>maven build….

2.2执行assembly:assembly命令

在Main窗口下的Goals里填写assembly:assembly,然后点击run就可以了。

2.3 run之后就会在项目的target目录下生成一个

项目名-版本号-with-dependencies的一个jar包,这个是个fat jar包,里面包含了项目里用到的依赖项。

当然也会生成另外一个没有包含依赖项的jar包。

3 部署项目

因为项目中还用到了很多资源文件,一些txt,properties文件等等,因此在部署的时候,还需要将这些文件存放在和jar包同路径下(否则就会出现运行时资源找不到的异常)。这一点和【Java】打包Jar包并用脚本执行里一样,可以参照这一篇文章。

当然也可以编辑pom.xml文件中的内容,打包时把资源文件一起打包进去,但是我们一些配置文件一般都是可能需要自己可以手动编辑的,如果打包到jar包中,就无法编辑了。

4 运行jar包

编写一个bat命令文件,里面的内容就是java -jar jar_name。

该命令文件也放在和jar同目录下,点击即可运行程序。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:#yyds干货盘点#pathlib面向对象的文件系统路径(一)
下一篇:Python常用函数(Python常用函数打印给孩子)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~