我有一个多模块 Maven 项目,如下所示:
parent
moduleA
moduleB
moduleC
所有模块都从父 pom 继承它们的版本。moduleC 依赖于 moduleB,因此 moduleC 的 pom.xml 包含:
<dependency>
<groupId>blah</groupId>
<artifactId>moduleB</artifactId>
<version>${project.version}</version>
</dependency>
这一切都很好。我可以毫无问题地运行安装目标,并且依赖关系解决得很好。
但是,我正在尝试使用以下命令使用 maven 发布插件进行发布:
mvn release:prepare -DreleaseVersion=1.0 -DdevelopmentVersion=1.1-SNAPSHOT
我可以看到我的 pom 中的所有版本都已正确更新。但是,当它尝试编译代码时会出现问题。因为 release:prepare 没有调用 install 目标,所以 moduleC 的编译失败,因为它无法解析对 moduleB 版本 1.0 的依赖。
有没有其他人遇到过这个问题?我认为具有跨模块依赖关系很好,但是 maven 发布插件似乎不适合这个?
提前致谢