首页 > 基础资料 博客日记
maven 项目打jar包& 将所有依赖打进jar包
2023-07-24 10:05:43基础资料围观715次
本篇文章分享maven 项目打jar包& 将所有依赖打进jar包,对你有帮助的话记得收藏一下,看Java资料网收获更多编程知识
一、原文地址:
maven 项目打jar包 并包含所有依赖_醉梦洛的博客-CSDN博客_maven打jar包含依赖包
二、举个例子
我写了一个maven项目(不是Spring boot)。
2.1 在pom.xml中引入插件:build - plugins中添加 plugin
在pom文件build - plugins中添加 plugin
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<!--给jar包起的别名-->
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<!--添加项目中主类-->
<mainClass>com.sdt.intf.client.tools.DealConnectFile</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
========================
我的整个pom文件的内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
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">
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>jmeter_code</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.1.15</version>
</dependency>
</dependencies>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<!--给jar包起的别名-->
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<!--添加项目中主类-->
<mainClass>com.sdt.intf.client.tools.DealConnectFile</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
2.2 打包
两种方式
方式一:直接使用idea打包
package
生成两个jar 一个是没有dependence结尾的jar,这个不包含其他依赖jar的jar包,只包含主类的依赖。
另一个是以dependence结尾jar,此jar是包含了项目中所有依赖的jar包
方式二:使用命令打包
mvn clean compaile package
生成两个jar 一个是没有dependence结尾的jar,这个不包含其他依赖jar的jar包,只包含主类的依赖。
另一个是以dependence结尾jar,此jar是包含了项目中所有依赖的jar包
文章来源:https://blog.csdn.net/qq_39208536/article/details/128905210
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
标签:
相关文章
最新发布
- Java开发笔记(一百五十五)生成随机数的几种途径
- 榨干 Claude Code 的 16 个实用小技巧(高端玩法,建议收藏!)
- NBA巨星詹姆斯表变老嫂子了?这锅Viggle Ai得背/Ai视频创作/Ai魔性视频创作/Ai优质视频创作
- Java简历、面试、试用期、转正
- 使用Apollo配置中心,**静态字段通过`@Value`的setter方法可以实现热更新**
- vivo Pulsar 万亿级消息处理实践(3)-KoP指标异常修复
- MybatisPlus使用详情
- G1收集器:JVM垃圾回收的新一代王者
- Viggle Ai API直通车/ViggleAi商务合作/ViggleAi API对接/ViggleAi深度合作/Ai视频合作
- JAVA_笔试