我使用Versions Maven插件来检查我的依赖项的更新。因此,我在pom.xml
添加了以下几行:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<version>${versions-plugin.version}</version>
<configuration>
<rulesUri>classpath:///rules.xml</rulesUri>
</configuration>
<dependencies>
<dependency>
<groupId>versionrules</groupId>
<artifactId>versionrules</artifactId>
<version>1-SNAPSHOT</version>
</dependency>
</dependencies>
</plugin>
但是如果我从命令行运行Versions Maven插件与pom.xml
在同一目录中,则不使用此配置。使用我自己的配置的唯一方法是将此插件配置放在profil中并在Maven运行期间执行此profil。
有没有办法在命令行上运行Versions插件并通过pom.xml
进行配置?我相信我的问题不仅适用于Versions插件,也适用于任何Maven插件。
答案 0 :(得分:1)
这可以通过在执行定义中使用执行标识default-cli
来完成,配置将在命令行执行期间使用(使用当前配置),因为Maven 3.3.1您可以使用类似的东西:
mvn version:set@second-cli
这意味着您可以在pom文件中对命令行执行不同的配置:
只需简单地用不同的ID分隔它们
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<version>2.5.</version>
<executions>
<execution>
<id>default-cli</id>
<configuration>
...
</configuration>
</execution>
<execution>
<id>second-cli</id>
<configuration>
....
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
因此,这意味着您可以通过提供id来在命令行上运行不同的配置。