maven-assembly-plugin 插件的主要作用是允许用户将项目输出与它的依赖项、模块、站点文档、和其他文件一起组装成一个可分发的归档文件,简单的说,就是自定义打包的工具,有自己的配置文件(Assembly描述符文件)。微服务使用这个插件的概率比较高,平时普通的项目不需要这样的实现方式。 pom配置: <plugin> <artifactId>mav...
在2.2基础上,我们还可以利用assembly,将我们依赖的jar归类,打包成一个zip。发布项目的时候,将zip包copy到服务器上,直接unzip xxx.zip,里面包含要运行的jar以及依赖的lib,还有配置的config文件,还可以包括执行脚本,可以直接启动服务。 <!-- ③maven-assembly-plugin --> <build> <resources> <resource> <directory...
3. 打包速度慢(不是一般的慢) 4. 打成的jar包体积略大。 下面是一个Eclipse的工程,其中含有不少的maven依赖包: 采用export成runnable jar包的方式是行不通的,正确做法是在工程的pom.xml文件中配置maven-assembly-plugin,pom.xml的配置如下: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi...
3. 打包速度慢(不是一般的慢) 4. 打成的jar包体积略大。 下面是一个Eclipse的工程,其中含有不少的maven依赖包: 采用export成runnable jar包的方式是行不通的,正确做法是在工程的pom.xml文件中配置maven-assembly-plugin,pom.xml的配置如下: <projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="...
使⽤MavenAssemblyplugin将依赖打包进jar ⼀个Eclipse的⼯程,在pom中配置了若⼲依赖,需要将pom中所有的依赖全部打包进⼀个jar包中,可以选择的⽅案有maven-assembly-plugin和fatjar。以前采⽤fatjar进⾏打包,但是fatjar有不少问题,1. 最近⼀次更新是在09年,⽆法⽀持新版本的eclipse。2.⽀...
maven-shade-plugin : 用来打可执行包(executable jar) maven-assembly-plugin : 支持定制化打包方式 我们日常使用的以maven-assembly-plugin为最多,因为大数据项目中往往有很多shell脚本、SQL脚本、.properties及.xml配置项等,采用assembly插件可以让输出的结构清晰而标准化。
在pom文件中进行添加maven-assembly-plugin插件来定制化打包 <build><finalName>${project.artifactId}</finalName><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><fork>true</fork><executable>true</executable><jvmArguments>-Dfile....
子模块:assembly,genhttp,telecomdata 文件(夹):logs文件夹,README.txt文件 如下: 其中assembly 是用来打包的模块,没有任何代码,就两个文件。其他模块为正常业务数据模块 2,pom文件 hdpetl.pom <modules><module>genhttp</module><module>telecomdata</module><module>assembly</module><!--打包模块排在最后--...
这个问题一度困扰了我好几个小时,我一开始使用maven-assembly-plugin构建tar分发包的时候,发现每次最终打包,都会在最外层有个包装层,比如我要构建的tar分发包的artifactId为abc ,那么最终打包完的tar文件总是内含abc目录,然后才是其他子目录sub1,sub2。而我们所希望的是当untar时候,能够直接出来的是子目录(sub1,su...
在maven-shade-plugin和maven-assembly-plugin插件默认配置中,二者都不约而同的展现出了先打包先优先的原则。相同文件第二次打包时,会检查当前文件目录下是否已存在该文件,如果存在,便舍弃第二次准备打包的文件。 整个顺序同样是按照打包插件所在的module的依赖树的深度遍历顺序为基础的。以下图为例,打包的顺序为1,4...