-D代表(Properties属性)
mvn -Dbase.version=1.1.20200440 deploy
这里是给base.version这个变量赋值,当然工程里这个变量原本就有值,只不过因为你的命令可以直接打包,并且覆盖这个值,所以-D的作用是:
- 如果propertyName不存在pom.xml,它将被设置。
- 如果propertyName已经存在pom.xml,其值将被作为参数传递的值覆盖,也就是-D后面的内容。
多个变量可以写的内容如下,中间是空格:
mvn -Dtheme=valueA -DpropB=valueB -DpropC=valueC clean package
theme 在你的pom中应该是:
<properties>
<theme>valueA</theme>
</properties>
-P
也就是说在指定的中,可以通过-P进行传递或者赋值。
<profiles>
<profile>
<id>test</id>
...
</profile>
</profiles>
执行mvn test -Ptest为触发配置文件。