Maven Assembly Plugin 插件使用小結(jié)
1 Maven Assembly Plugin 地址
https://maven.apache.org/plugins/maven-assembly-plugin/index.html
2 Maven Assembly Plugin 特點(diǎn)
Maven Assembly Plugin使開發(fā)人員能夠?qū)㈨?xiàng)目輸出合并到單個(gè)可分發(fā)存檔中,該存檔還包含依賴項(xiàng)、模塊、站點(diǎn)文檔和其他文件
- 可以使用預(yù)定義的程序集描述符輕松構(gòu)建分發(fā)“程序集”。這些描述符處理許多常見操作,例如將項(xiàng)目與生成的文檔一起打包到單個(gè) zip 存檔中。
- 或者,您的項(xiàng)目可以提供自己的描述符,并對(duì)依賴項(xiàng)、模塊、文件集和單個(gè)文件在程序集中的打包方式實(shí)現(xiàn)更高級(jí)別的控制。
- 支持的包格式有
zip,tar,tar.gz (or tgz),tar.bz2 (or tbz2),tar.snappy,tar.xz (or txz),tar.zst (or tzst),jar,dir,war,以及 ArchiveManager 已配置的任何其他格式
3 maven-assembly-plugin 的用法
3.1 使用預(yù)制描述符 jar-with-dependencies 構(gòu)建 一個(gè)包含所有依賴項(xiàng)的Jar文件
官網(wǎng)鏈接:https://maven.apache.org/plugins/maven-assembly-plugin/usage.html
- 構(gòu)建 一個(gè)包含所有依賴項(xiàng)可執(zhí)行的jar包
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.7.1</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<appendAssemblyId>false</appendAssemblyId>
<archive>
<manifest>
<!-- 指定主類 -->
<mainClass>com.ccf.Main</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<!-- bind to the packaging phase -->
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>- 如果要 打包成不可執(zhí)行的jar包,只需 刪除 mainClass配置
<archive> <manifest> <!-- 指定主類 --> <mainClass>com.yq.Main</mainClass> </manifest> </archive>
- 參數(shù)說明
- <appendAssemblyId>false</appendAssemblyId>
最后打包成的文件名 是否包含 assembly id,預(yù)制描述符jar-with-dependencies 對(duì)應(yīng)的 assembly id 就是"jar-with-dependencies",如果是true(默認(rèn)),會(huì)生成兩個(gè)文件,一個(gè)是不包含依賴的名為 {artifactId}{version}.jar,一個(gè)是包括全部依賴的名為{artifactId}{version}-jar-with-dependencies.jar,如果改為false,則只會(huì)有一個(gè)是包含依賴的名為 {artifactId}{version}.jar
- <appendAssemblyId>false</appendAssemblyId>
3.2 自定義描述符文件
大數(shù)據(jù)項(xiàng)目中往往有很多shell腳本、SQL腳本、.properties及.xml配置項(xiàng)等,采用assembly插件可以讓輸出的結(jié)構(gòu)清晰而標(biāo)準(zhǔn)化。
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.7.1</version>
<configuration>
<!-- 配置描述符文件 -->
<descriptors>
<descriptor>src/assembly/assembly.xml</descriptor>
</descriptors>
<archive>
<manifest>
<mainClass>com.yq.Main</mainClass> <!-- 指定主類 -->
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id> <!-- this is used for inheritance merges -->
<phase>package</phase> <!-- bind to the packaging phase -->
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>到此這篇關(guān)于Maven Assembly Plugin 插件使用小結(jié)的文章就介紹到這了,更多相關(guān)Maven Assembly Plugin 插件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- maven插件maven-assembly-plugin打包歸納文件zip/tar使用
- maven-assembly-plugin報(bào)紅無法加載報(bào)錯(cuò):Plugin?‘maven-assembly-plugin:‘?not?found
- 使用maven-assembly-plugin如何將system 依賴范圍的jar以class 方式打包進(jìn) jar包中
- 使用maven-assembly-plugin如何打包多模塊項(xiàng)目
- SpringCloud maven-assembly-plugin 多級(jí)目錄打包的實(shí)現(xiàn)
- Maven3種打包方式中maven-assembly-plugin的使用詳解
相關(guān)文章
@RequestMapping 如何使用@PathVariable 從URI中獲取參數(shù)
這篇文章主要介紹了@RequestMapping 如何使用@PathVariable 從URI中獲取參數(shù)的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08
圖解二叉樹的三種遍歷方式及java實(shí)現(xiàn)代碼
本篇文章主要介紹了圖解二叉樹的三種遍歷方式及java實(shí)現(xiàn)代碼,具有一定的參考價(jià)值,有興趣的可以了解一下2017-07-07
SSM框架中entity mapper dao service controll
這篇文章主要介紹了SSM框架中entity mapper dao service controller層的使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11
JAVA線程池監(jiān)控以及動(dòng)態(tài)調(diào)整示例詳解
這篇文章主要為大家介紹了JAVA線程池監(jiān)控以及動(dòng)態(tài)調(diào)整示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-09-09
聊聊springboot2.2.3升級(jí)到2.4.0單元測(cè)試的區(qū)別
這篇文章主要介紹了springboot 2.2.3 升級(jí)到 2.4.0單元測(cè)試的區(qū)別,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-10-10
JWT整合springboot自定義定時(shí)更換秘鑰方式
文章介紹了JWT( JSON Web Token)的基本概念、結(jié)構(gòu)和使用場(chǎng)景,并重點(diǎn)講解了在Spring Boot中自定義定時(shí)更換JWT秘鑰的過程,通過定義用戶信息類、JWT工具類、配置攔截器和定時(shí)修改秘鑰工具類,實(shí)現(xiàn)了一個(gè)基本的JWT認(rèn)證和密鑰管理機(jī)制2025-11-11

