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