使用Hudson和Maven发布插件来发布多个项目

时间:2011-05-23 21:55:48

标签: hudson snapshot maven-release-plugin multiple-projects

我有三个maven项目。让我们说A,B和C.这些项目中的每一个都是具有平面目录结构的多模块项目。

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

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

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

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

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

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

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

1 个答案:

答案 0 :(得分:2)

如何创建构建序列?

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

  • 项目-A-RELEASE-工作
  • 项目-B-RELEASE-工作
  • 项目-C-RELEASE-工作

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

在这种情况下,释放任何这些项目将强制释放下一个项目。

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