maven项目打可执行jar包
程序员文章站
2022-04-29 16:44:07
...
打可执行jar
使用maven-assembly-plugin
插件,将maven项目打包成可执行jar, 代码连接
1.插件引入
pom.xml中添加如下内容
<build>
<finalName>${project.artifactId}</finalName>
<plugins>
<plugin>
<!-- NOTE: 不需要设置groupId,因为默认为org.apache.maven.plugins -->
<artifactId>maven-assembly-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<!-- 指定jar包名称,需appendAssemblyId和finalName配合使用 -->
<appendAssemblyId>false</appendAssemblyId>
<finalName>${project.artifactId}-full</finalName>
<archive>
<manifest>
<!-- 设置主类-->
<mainClass>tech.nosql.MainTask</mainClass>
<!-- 将版本信息写入MANIFEST.MF -->
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<!-- this is used for inheritance merges -->
<id>make-assembly</id>
<!-- 将assembly绑定到package阶段 -->
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
2.打包
执行以下命令进行打包
mvn clean package
执行成功后会生产/target/java-fatjar-demo-full.jar
运行jar
# 在target目录下执行
java -jar java-fatjar-demo-full.jar
输出
配置文件中sleep.millis = 1000
{"age":6,"name":"u_0"}
{"age":23,"name":"u_1"}
{"age":95,"name":"u_2"}
{"age":35,"name":"u_3"}
....
参考:
http://maven.apache.org/plugins/maven-assembly-plugin/usage.html
http://maven.apache.org/shared/maven-archiver/index.html
可执行jar重命名
下一篇: 项目中用到的小功能代码
推荐阅读
-
详解在LINUX上部署带有JAR包的JAVA项目
-
eclipse导出jar包运行(eclipse导出可执行jar包)
-
Spring Boot Maven 打包可执行Jar文件的实现方法
-
idea引入jar包快捷键(idea导入新项目)
-
eclipse导出jar包运行(eclipse导出可执行jar包)
-
可执行Jar包运行原理
-
spring boot 打jar包,获取resource路径下的文件
-
Nexus-在项目中使用Maven私服,Deploy到私服、上传第三方jar包、在项目中使用私服jar包
-
java项目打包成jar包(java项目实例源码)
-
maven下载jar包改用阿里云maven库的方法