Java 如何使用mvn-D通过命令行在Maven中设置(多个)属性?
如何在maven中使用Java 如何使用mvn-D通过命令行在Maven中设置(多个)属性?,java,maven,command-line,properties,Java,Maven,Command Line,Properties,如何在maven中使用mvn-D?如何使用它设置属性(或多个属性) 有关于mvn-D的官方文章吗 我找不到。谢谢。使用-D通过命令行设置属性的正确方法是: mvn -DpropertyName=propertyValue clean package 如果pom.xml中不存在propertyName,则会设置它 如果pom.xml中已经存在propertyName,则其值将被作为参数通过-D传递的值所覆盖 要发送多个变量,请使用多个空格分隔的-Ds: mvn -DpropA=valueA
mvn-D
?如何使用它设置属性(或多个属性)
有关于mvn-D的官方文章吗
我找不到。谢谢。使用
-D
通过命令行设置属性的正确方法是:
mvn -DpropertyName=propertyValue clean package
- 如果
中不存在pom.xml
,则会设置它propertyName
- 如果
中已经存在pom.xml
,则其值将被作为参数通过propertyName
传递的值所覆盖-D
-D
s:
mvn -DpropA=valueA -DpropB=valueB -DpropC=valueC clean package
您可以在中查看有关属性的更多详细信息。更具体地说,在第节:
例子:
如果您的pom.xml中有:
<properties>
<theme>myDefaultTheme</theme>
</properties>
如果我想设置多个属性,如何编写它-Dxx=11-Dyy=2?@jiafu是的,只是空格分隔符,正如#earcam所说的,多个空格分隔的-D
s是正确的方式,就像您所做的那样:-Dxx=11-Dyy=2
。现在,如果你有几个常用的变量,你应该考虑使用配置文件。检查我在答案中发布的参考链接的项目。我是否需要将系统属性放在clean package命令之前?我不明白为什么mvncleanpackage-DskipTests
可以工作,而skipTests放在clean命令之后package@OlivierBoiss它之所以有效,是因为不管你把变量放在目标之前还是之后,都是如此简单。
<properties>
<theme>halloween</theme>
</properties>