如何在Subversion的多模块Maven构建中触发单个模块的Jenkins构建?

时间:2012-04-25 14:41:41

标签: jenkins

我在Jenkins中设置了一个大的Maven多模块构建。它是为增量构建而设置的。

触发后,它会解析所有POM并找出需要构建的内容。

目前设置为触发SCM更改。

我想制作这个版本,以便我可以执行以下操作:

  • 仍然手动启动它。当我这样做时,它的增量构建行为将像今天一样起作用。
  • 从Subversion提交挂钩触发构建。我想知道,如果我通过excellent instructions设置提交钩子的麻烦,它不会导致构建不必要的长度来轮询SCM或做其他不必要的工作事实上,提交挂钩告诉它发生了什么变化。

我提到了第二点,因为从我看文档来看,这似乎只是戳了一般的构建并让它做了它的事情。 (我可能错了。)我宁愿告诉詹金斯究竟发生了什么变化,并让詹金斯“知道”这些更改的存储库路径映射到哪些模块,这样Jenkins就不必进行轮询或额外的pom.xml解析以弄明白。

我已经准备好让一个经历过这场战争的人告诉我,看看,只是设置Subversion提交钩子,这就像你将要获得的那样好,但我在问这个问题如果有更好的食谱。

2 个答案:

答案 0 :(得分:4)

使用Maven 3版本时,此工具does not yet apparently exist in Jenkins

答案 1 :(得分:1)

您是否在项目配置的 Build 部分尝试了 Incremental build - only build changed modules 选项?在这种情况下,存储库将通知Jenkins提交的更改,SCM插件将检出文件,Maven插件将尝试来猜测哪些模块需要重建。它适用于我的环境中的大多数情况,尽管它不是100%证明。