Maven中的-D(Properties属性)和-P(Profiles配置文件)

来源:互联网 发布:云影源码1llo 编辑:程序博客网 时间:2024/06/03 15:56

Maven中的-D(Properties属性)和-P(Profiles配置文件)

-D代表(Properties属性)

使用命令行设置属性-D的正确方法是:

mvn -DpropertyName=propertyValue clean package
  • 如果propertyName不存在pom.xml,它将被设置。
  • 如果propertyName已经存在pom.xml,其值将被作为参数传递的值覆盖-D

要发送多个变量,请使用多个空格分隔符加-D

mvn -DpropA=valueA -DpropB=valueB -DpropC=valueC clean package

例:

如果你的pom.xml如下

<properties>    <theme>myDefaultTheme</theme></properties>

那么在这个执行过程中mvn -Dtheme=halloween clean package会覆盖theme的值,具有如下效果

<properties>    <theme>halloween</theme></properties>

以上参考:http://stackoverflow.com/questions/17332857/how-to-use-the-mvn-d-to-set-multiple-properties-in-maven-via-command-line

-P代表(Profiles配置文件)

也就是说在<profiles>指定的<id>中,可以通过-P进行传递或者赋值。

例:

如果你的pom.xml如下:

复制代码
  <profiles>      <profile>          <id>test</id>          ...      </profile>   </profiles>
复制代码

执行mvn test -Ptest为触发配置文件。

或者

复制代码
<profile>   <id>test</id>   <activation>      <property>         <name>env</name>         <value>test</value>      </property>   </activation>   ...</profile>
复制代码

执行mvn test -Penv=test为触发配置文件。

具体实践例子,参考:http://www.cnblogs.com/EasonJim/p/6828743.html

 

总结:

更多的参考Maven帮助文档:

http://stackoverflow.com/questions/17332857/how-to-use-the-mvn-d-to-set-multiple-properties-in-maven-via-command-line

http://books.sonatype.com/mvnref-book/reference/running-sect-options.html#running-sect-define-prop

Google搜索关键字:maven d flag

阅读全文
0 0
原创粉丝点击