1

我有三个 Maven 项目。假设 A、B 和 C。这些项目中的每一个都是具有平面目录结构的多模块项目。

项目 C 依赖于项目 B。而项目 B 依赖于项目 A。

目前,我可以成功地使用所有三个项目的 Hudson 进行持续集成。

我想要做的是使用 maven-release-plugin 一次性发布所有三个项目。据我了解,maven-release-plugin 要求依赖项是完整版本,而不是 SNAPSHOT 版本。

我需要维护 SNAPSHOT 版本号,以便 Eclipse 工作区解析可以在开发阶段保持项目相互依赖性。

由于这些项目具有分层依赖,因此项目必须按顺序发布,同时依次更新依赖SNAPSHOT版本。

关于如何实现这一目标的任何想法?

我不认为 maven-release-plugin 可以实现这一点。至少,从我所学到的。我猜我将不得不运行一个单独的 Hudson 作业,该作业将在项目发布时更新依赖版本号。

4

1 回答 1

2

如何创建构建序列?

考虑以下配置,您有以下工作。

  • Project-A-Release-Job
  • 项目-B-发布-工作
  • 项目-C-发布-工作

此外
,如果构建了 Project-A-Release-Job,则会触发 Project-B-Release-Job,
如果构建了 Project-B-Release-Job,则会触发 Project-C-Release-Job

在这种情况下,发布这些项目中的任何一个都将强制发布下一个项目。

考虑使用 maven-versions-plugin 与 scm 插件组合的顺序:
1. 验证新的发布/快照版本是否在存储库中
2. 更新 POM 中的依赖版本
3. 将更新的 Pom 提交到 SCM。

于 2011-08-16T14:06:40.323 回答