maven打包成第三方jar包且把pom依赖包打入进来的方法
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, 找到assembliesjar-with-dependencies.xml
3.3 把里面的UNPACK改成FALSE即可
以下第二种方法
<!-- <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>-->
下一篇:
变量概念及类型详细解析及转换: