Maven 打包的几种方式,最近遇到坑,总结一下

直接打包,不打包依赖包

直接打包,不打包依赖包,仅打包出项目中的代码到JAR包中。在POM中添加如下plugin即可,随后执行maven install

 

Maven 打包的几种方式,最近遇到坑,总结一下

将依赖JAR包输出到lib目录方式

将项目中的JAR包的依赖包输出到指定的目录下,修改outputDirectory配置,如下面的${project.build.directory}/lib。如想将打包好的JAR包可以通过命令直接运行,如java -jar xx.jar,还需要制定manifest配置的classpathPrefix与上面配置的相对应,如上面把依赖JAR包输出到了lib,则这里的classpathPrefix也应指定为lib/;同时,并指定出程序的入口类,在配置mainClass节点中配好入口类的全类名。 
这种打包方式对于JAVA项目是通用的,不管是不是springBoot的项目还是传统的JAVA项目,都可行。

Maven 打包的几种方式,最近遇到坑,总结一下

将项目依赖包和项目打为一个包

这种方式打包会将项目中的依赖包和项目代码都打为一个JAR包,其配置如下:

 

Maven 打包的几种方式,最近遇到坑,总结一下

但此种方式对于传统的JAVA项目打包没问题,如是打有spring框架的JAR包就不可以了。可以采用maven-shade-plugin的插件来打包,来实现spring框架的打包

 

springBoot项目打包

springBoot项目打包最常用且最简单的方式是用springBoot的打包plugin

Maven 打包的几种方式,最近遇到坑,总结一下

在POM中加入此插件,再点击maven [install]或[repackge]就会把当前项目里所有依赖包和当前项目的源码都打成一个JAR包,同时还会将没有依赖包的JAR包也打出来,以.original的就是了

至此满叔叔maven 打包遇到的坑整理完成,程序开发事一工作部分,还要探索一下打包原理,

送给各位看客的一句我的座右铭:读书犯困,因为那是梦开始的地方