“assembly”是把一组文件、目录、依赖元素组装成一个归档文件. 比如, 假设一个 Maven project定义了一个JAR artifact,它包含控制台应用程序和Swing应用程序 。这样一个工程可以定义两套包含描述符,一套给给控制台应用,另一套给Swing应用程序,它们包含各自的脚本、目录和依赖。 Assembly Plugin的描述符可以定义任何一...
这里提示一下,在build标签下可以再添加一段如下代码,可以时自定义jar包名字,不用再默认输出一大段jar包名。而在maven-assembly-plugin插件下的finalname标签则是打包解压后的目录名。 <finalName>${project.artifactId}</finalName> 下面说一下配置文件的参数说明 (也就是上述src/main/assembly/assembly.xml的具体配置...
Maven-assembly-plugin只是一个自定义的打包插件,本身不编译工程,工程的编译还是依赖于maven默认绑定插件中的maven-compiler-plugin来完成的。 使用步骤 工程的pom.xml里配置Assembly插件。 需要指定一个Assembly描述符文件,该文件指定了打包格式,包含的文件/过滤的文件等信息,可以同时指定多个描述符文件,打包成不同的格式...
当项目中对打包有一些特殊需求时,比如想打包成zip或tar.gz格式的包时,可以使用maven-assembly-plugin插件来实现自定义打包输出路径及一系列特定需求。 本文将会对该插件的常见使用方式及各标签作一些详细的介绍,更为细致的需求请自行访问该插件官网:http://maven.apache.org/plugins/maven-assembly-plugin/assembly.html...
插件名称:maven-assembly-plugin 目前最新的版本:3.2.0 作用:该插件可以使用户根据自己的需求自定义打包规则和打包类型
src :只将源码目录下的文件打包; project : 将整个project资源打包。 要查看它们的详细定义,可以到maven-assembly-plugin-2.4.jar里去看,例如对应 bin 的assembly descriptor 如下: <assemblyxmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"xmlns:xsi="http://www.w3.org/2001/XM...
maven-assembly-plugin,支持自定义的打包结构,也可以定制依赖项等。 我们日常使用的以maven-assembly-plugin为最多,因为大数据项目中往往有很多shell脚本、SQL脚本、.properties及.xml配置项等,采用assembly插件可以让输出的结构清晰而标准化。 要使用该插件,就在项目pom文件中加入以下内容。
formats:是assembly插件支持的打包文件格式,有zip、tar、tar.gz、tar.bz2、jar、war。可以同时定义多个format;如果按上面的配置,生成的文件就是${fileName}-bin.zip。 dependencySets/dependencySet 设置工程依赖文件在打包时的属性。也与fileSets大致相同,不过还有两个特殊的配置: ...
如示例中的"terminal-dispatch"),否则文件将直接放置在包的根目录下。0755标签则用于设置文件的unix属性,涉及到文件的读写权限设定,具体细节因操作系统(如Linux)而异,本文对此不作深入探讨。最后,在pom.xml文件中进行相应的配置,引入Assembly描述符文件,以实现自定义打包功能。
Maven打包之maven-assembly-plugin 打包是一个比较头疼的事情,默认maven打包的结果只包含项目本身的代码,如果要执行代码,还得带上依赖。如果希望将所有依赖放到指定的文件夹下,再在目录下写入shell脚本等之类的事情。maven-shade-plugin插件不能满足需求,而maven-assembly-plugin插件能够帮我们合理地归档文件。