我在我的pom中定义了一个属性。我也可以将它定义为命令行参数。如果我这样做,我的属性是否会被覆盖或者共轭或pom中的属性具有更高的优先级并且命令行参数没有效果?
提前谢谢。答案 0 :(得分:2)
如果使用命令行参数运行它,它将覆盖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(当然不存在)。正如您所说 - 命令行具有更高的优先级。