maven打包成第三方jar包且把pom依赖包打入进来的方法
一、添加插件
添下方maven插件plugin到项目的pom.xml中
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<!--指定命令行 java -jar XXX.jar 运行程序的主类入口 -->
<!--不配置就会报错-->
<mainClass>com.jia.App</mainClass>
</manifest>
</archive>
<descriptorRefs>
<!--配置含有全部依赖的jar包后缀,用于区别默认的jar包-->
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
</build>
如果出现class重名的情况,这时候就要把最新的版本号添加进去即可
二、打包
打包命令:mvn assembly:assembly
,执行成功后会在target文件夹下多出一个以-jar-with-dependencies
结尾的jar包. 这个jar包就包含了项目所依赖的所有jar的class。
三、修改插件
3.如果不希望依赖的jar包变成class的话,可以修改ASSEMBLY插件.
3.1 找到assembly在本地的地址,在本地maven仓库里找到
3.2 用WINZIP或解压工具打开此目录下的maven-assembly-plugin-2.4.jar, 找到assemblies\jar-with-dependencies.xml
3.3 把里面的UNPACK改成FALSE即可
文章转自:
https://www.jb51.net/article/150488.htm
maven打包成第三方jar包且把pom依赖包打入进来 - 颓废的悠然 - 博客园
chatgpt体验:http://www.chat136.com
chatgpt学习:http://me.chat136.com
以下第二种方法
<!-- <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>2.4.1</version> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <mainClass>redisaliyun.RedisAliyunApplication</mainClass> </transformer> </transformers> </configuration> </execution> </executions> </plugin> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>2.3.2</version> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build>-->