參數可選列表
mvn -v, –version 顯示版本信息;
mvn -V, –show-version 顯示版本信息后繼續執行Maven其他目標;
mvn -h, –help 顯示幫助信息; mvn -e, –errors 控制Maven的日志級別,產生執行錯誤相關消息;
mvn -X, –debug 控制Maven的日志級別,產生執行調試信息;
mvn -q, –quiet 控制Maven的日志級別,僅僅顯示錯誤;
mvn -Pxxx 激活 id 為 xxx的profile (如有多個,用逗號隔開);
mvn -Dxxx=yyy 指定Java全局屬性;
mvn -o , –offline 運行offline模式,不聯網更新依賴;
mvn -N, –non-recursive 僅在當前項目模塊執行命令,不構建子模塊;
mvn -pl, –module_name 在指定模塊上執行命令;
mvn -ff, –fail-fast 遇到構建失敗就直接退出;
mvn -fn, –fail-never 無論項目結果如何,構建從不失敗;
mvn -fae, –fail-at-end 僅影響構建結果,允許不受影響的構建繼續;
mvn -C, –strict-checksums 如果校驗碼不匹配的話,構建失敗;
mvn -c, –lax-checksums 如果校驗碼不匹配的話,產生告警;
mvn -U 強制更新snapshot類型的插件或依賴庫(否則maven一天只會更新一次snapshot依賴);
mvn -npu, –no-plugin-updates 對任何相關的注冊插件,不進行最新檢查(使用該選項使Maven表現出穩定行為,該穩定行為基於本地倉庫當前可用的所有插件版本);
mvn -cpu, –check-plugin-updates 對任何相關的注冊插件,強制進行最新檢查(即使項目POM里明確規定了Maven插件版本,還是會強制更新);
mvn -up, –update-plugins [mvn -cpu]的同義詞;
mvn -B, –batch-mode 在非交互(批處理)模式下運行(該模式下,當Mven需要輸入時,它不會停下來接受用戶的輸入,而是使用合理的默認值);
mvn -f, –file 強制使用備用的POM文件; mvn -s, –settings 用戶配置文件的備用路徑;
mvn -gs, –global-settings 全局配置文件的備用路徑;
mvn -emp, –encrypt-master-password 加密主安全密碼,存儲到Maven settings文件里;
mvn -ep, –encrypt-password 加密服務器密碼,存儲到Maven settings文件里;
mvn -npr, –no-plugin-registry 對插件版本不使用~/.m2/plugin-registry.xml(插件注冊表)里的配置
-D代表(Properties屬性)
用法:
mvn -DpropertyName=propertyValue clean package
如果pom.xml中不存在名為propertyName屬性,它將被設置
如果pom.xml中已存在propertyName屬性,其(propertyValue)值將會傳遞給參數
要發送多個變量,請使用多個空格分隔符加-D:
mvn -DpropA=valueA -DpropB=valueB -DpropC=valueC clean package
舉例:
pom.xml
<properties>
<theme>myDefaultTheme</theme>
</properties>
執行以下命令:
mvn -Dtheme=halloween clean package
打包后的pom.xml文件內容已被指定的參數替換:
<properties>
<theme>halloween</theme>
</properties>
-P代表(Profiles配置文件,指定環境)
<profiles>指定的<id>中,可以通過-P進行傳遞或者賦值
舉例
pom.xml如下:
<profiles>
<profile>
<id>test</id>
...
</profile>
</profiles>
則觸發profile中的配置的命令為:mvn test -Ptest
在譬如pom.xml如下:
<profile>
<id>test</id>
<activation>
<property>
<name>env</name>
<value>test</value>
</property>
</activation>
...
</profile>
則觸發profile中的配置的命令為:mvn test -Penv=test
