我正在使用 Maven 构建我的代码。我创建了基于模块的 Maven 结构,如下所示
- 父-POM
- 子父母1
- SP1_Child1
- SP1_Child2
- SP1_Child3
- 子父母2
- SP2_Child1
- SP2_Child2
- SP2_Child3
- 子父母1
我所有的模块版本和外部依赖版本都在 Parent POM 中维护。当我进行完整的 mvn 安装时一切正常,但是当我尝试构建一个像 SP1_Child1 这样的子模块时,构建失败,因为它无法识别其依赖项的版本。我检查了本地机器上的 maven 存储库,我的所有模块都已安装,但 .POM 文件没有版本号。这可能是因为父 POM 上的 mvn install 没有将 ${module.version} 替换为子模块的实际版本。
父-POM
<project ..>
<groupId>the.company.project</groupId>
<artifactId>Parent-POM</artifactId>
<version>1.0-SNAPSHOT</version>
...
<properties>
<module.version>1.0</module.version>
</properties>
</project>
SP1_Child1
<project ..>
<parent>
...
</parent>
<groupId>the.company.project</groupId>
<artifactId>SP1_Child1</artifactId>
<version>${module.version}</version>
...
</project>
我的 mvn install 如何更新 maven 存储库中 .POM 文件中的版本?或者我怎样才能在没有任何版本错误的情况下运行我的子模块之一?