假设我有一个多模块项目
Project A (pom.xml)
- B (module pom.xml)
- C (module pom.xml)
现在在 A 的 pom.xml 中,在依赖管理下,我有以下依赖:
<dependency>
<groupId>com.mycompany</groupId>
<artifactId>C</artifactId>
<version>1.0.0-SNAPSHOT</version>
<dependency>
在 B 的 pom.xml 中,我使用了上述依赖项。
<dependency>
<groupId>com.mycompany</groupId>
<artifactId>C</artifactId>
<dependency>
现在假设我在根 pom.xml(A 的 pom.xml)上运行以下命令
mvn versions:set -DnewVersion=137.0.18 -DprocessDependencies=false
此命令仅设置父模块和子模块版本的版本(但不会更新依赖项),这与预期的一样。
现在,如果我想运行以下命令并处理依赖项,如下所示:
mvn versions:set -DnewVersion=137.0.19 -DprocessDependencies=true
现在它不处理依赖关系。如果我使用 processDependencies=true 运行第一个命令,它将更新依赖项。我无法理解为什么第二次运行它不处理依赖项?对我来说听起来像是版本插件上的错误。