這篇文章將為大家詳細(xì)講解有關(guān)Maven的-pl -am -amd參數(shù)是什么,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。
成都創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站建設(shè)、做網(wǎng)站、凌云網(wǎng)絡(luò)推廣、微信小程序開發(fā)、凌云網(wǎng)絡(luò)營銷、凌云企業(yè)策劃、凌云品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);成都創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供凌云建站搭建服務(wù),24小時(shí)服務(wù)熱線:18982081108,官方網(wǎng)址:www.cdcxhl.com
昨天maven的deploy任務(wù)需要只選擇單個(gè)模塊并且把它依賴的模塊一起打包,第一時(shí)間便想到了-pl參數(shù),然后就開始處理,但是因?yàn)橹爸豢戳艘幌旅畹慕榻B,竟然花了近半小時(shí)才完全跑通,故記錄此文。
假設(shè)現(xiàn)有項(xiàng)目結(jié)構(gòu)如下
dailylog-parent
|-dailylog-common
|-dailylog-web
三個(gè)文件夾處在同級(jí)目錄中
dailylog-web依賴dailylog-common
dailylog-parent管理dailylog-common和dailylog-web。
根據(jù)資料已知:
參數(shù) | 全稱 | 釋義 | 說明 |
-pl | --projects | Build specified reactor projects instead of all projects | 選項(xiàng)后可跟隨{groupId}:{artifactId}或者所選模塊的相對(duì)路徑(多個(gè)模塊以逗號(hào)分隔) |
-am | --also-make | If project list is specified, also build projects required by the list | 表示同時(shí)處理選定模塊所依賴的模塊 |
-amd | --also-make-dependents | If project list is specified, also build projects that depend on projects on the list | 表示同時(shí)處理依賴選定模塊的模塊 |
-N | --Non-recursive | Build projects without recursive | 表示不遞歸子模塊 |
-rf | --resume-from | Resume reactor from specified project | 表示從指定模塊開始繼續(xù)處理 |
以下是在maven-3.3.9中的試驗(yàn)
1. 在dailylog-parent目錄運(yùn)行`mvn clean install -pl org.lxp:dailylog-web -am`,結(jié)果
dailylog-common成功安裝到本地庫
dailylog-parent成功安裝到本地庫
dailylog-web成功安裝到本地庫
該命令等價(jià)于`mvn clean install -pl ../dailylog-web -am`
2. 在dailylog-parent目錄運(yùn)行`mvn clean install -pl ../dailylog-common -am`,結(jié)果
dailylog-common成功安裝到本地庫
dailylog-parent成功安裝到本地庫
3. 在dailylog-parent目錄運(yùn)行`mvn clean install -pl ../dailylog-common -amd`,結(jié)果
dailylog-common成功安裝到本地庫
dailylog-web成功安裝到本地庫
由于dailylog-parent并不依賴dailylog-common模塊,故沒有被安裝
4. 在dailylog-parent目錄運(yùn)行`mvn clean install -pl ../dailylog-common,../dailylog-parent -amd`,結(jié)果
dailylog-common成功安裝到本地庫
dailylog-parent成功安裝到本地庫
dailylog-web成功安裝到本地庫
5. 在dailylog-parent目錄運(yùn)行`mvn clean install -N`,結(jié)果
dailylog-parent成功安裝到本地庫
-N表示不遞歸,那么dailylog-parent管理的子模塊不會(huì)被同時(shí)安裝
6. 在dailylog-parent目錄運(yùn)行`mvn clean install -pl ../dailylog-parent -N`,結(jié)果
dailylog-parent成功安裝到本地庫
7. 在dailylog-parent目錄運(yùn)行`mvn clean install -rf ../dailylog-common`,結(jié)果
dailylog-common成功安裝到本地庫
dailylog-web成功安裝到本地庫
關(guān)于Maven的-pl -am -amd參數(shù)是什么就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。