1. 程式人生 > 其它 >maven多profile環境打包下-P引數和-D引數

maven多profile環境打包下-P引數和-D引數

技術標籤:maven

P代表(Profiles配置檔案)
在指定的中,可以通過-P進行傳遞或者賦值。
假如pom.xml如下

<profiles>
      <profile>
          <id>prod</id>
          ...
      </profile>
      <profile>
          <id>test</id>
          ...
      </profile>
   </profiles>

打包時執行mvn clean package -P test將觸發test環境的profile配置

如果pom.xml如下

<profile>
   <id>test</id>
   <activation>
      <property>
         <name>env</name>
         <value>test</value>
      </property>
   </activation>
   <id>prod</id>
      <property>
         <name>env</
name
>
<value>prod</value> </property> </id> </profile>

打包時執行mvn clean package -P prod將觸發prod環境的profile配置
-D代表(Properties屬性)

假如pom.xml如下:

<properties>
    <attr>defaultattr</attr>
</properties>

執行mvn -Dattr=newattr clean package,則pom.xml內attr的實際值將被替換成newattr

命令列:
mvn -DpropertyName=propertyValue clean package
如果propertyName不存在pom.xml,它將被設定。
如果propertyName已經存在pom.xml,其值將被作為引數傳遞的值覆蓋-D。
如果要傳送多個變數,請使用多個空格分隔符加-D:
mvn -DpropA=valueA -DpropB=valueB -DpropC=valueC clean package

參考連結:
https://blog.csdn.net/zhouyan8603/article/details/78668297