【发布时间】:2015-03-03 09:11:34
【问题描述】:
我在我的 pom.xml 中定义了一个属性。我也可以将其定义为命令行参数。如果我这样做,我的属性是否会被覆盖或者 pom 中的共轭 OR 属性具有更高的优先级并且命令行参数无效?
提前致谢。
【问题讨论】:
标签: maven properties command-line-arguments pom.xml
我在我的 pom.xml 中定义了一个属性。我也可以将其定义为命令行参数。如果我这样做,我的属性是否会被覆盖或者 pom 中的共轭 OR 属性具有更高的优先级并且命令行参数无效?
提前致谢。
【问题讨论】:
标签: maven properties command-line-arguments pom.xml
如果您使用命令行参数运行它,它将覆盖 pom.xml 中的属性值。
例如,如果我的 pom 中有依赖项:
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<version>${mockito.version}</version>
<scope>test</scope>
</dependency>
...
<properties>
<mockito.version>1.9.5</mockito.version>
</properties>
然后,如果我运行命令:
mvn clean install -Dmockito.version=1111
maven 将搜索版本 1111(当然不存在)。正如你所说 - 命令行具有更高的优先级。
【讨论】: