增量构建在詹金斯(Incremental build in Jenkins)

2019-07-31 12:49发布

我使用詹金斯1.462和Maven的版本是3.0.4。 在詹金斯我启用复选框“增量编译 - 只有建立更改的模块”

我想弄清楚两个问题:

  1. 无论增量生成足够? 在这里我如何触发詹金斯从Subversion多模块Maven构建建立一个单一的模块? 例如是说,它不会在100%以下工作http://www.slideshare.net/andrewbayer/7-habits-of-highly-effective-jenkins-users在第19页中指出,增量版本是互补全面建立,而不是替代。

  2. 无论是增量编译-只有建立更改的模块实际上是按预期工作? 我这个是什么意思? 如果我有模块A,B,X,C,D X使用A和B,C使用X,d使用C和I使在X模块更换。 比我想重新编译模块X(itslef),C(即使用X直接地)和d(即在传递闭包; d使用C,在使用C)。

注:这是我为了使增量编译所做的唯一变化。

Answer 1:

正如Maven的说明文档增量构建都不是很可靠的,至少到3.0.4:

目前(3.0.4)的Apache Maven的不支持增量构建得非常好。

https://cwiki.apache.org/confluence/display/MAVEN/Incremental+Builds (第一行)

相反,我会强烈建议使用任何加快您的构建这两种方法:

  • 使用并行构建。 在我的大项目的经验,这伟大工程,可以大大降低用最小的建造时间(如果有的话)的风险。 只需执行类似mvn -T 1.5C clean install https://cwiki.apache.org/confluence/display/MAVEN/Parallel+builds+in+Maven+3

  • 如果你的模块都是独立的,你可以只是将它们移动到不同的项目和使用Maven依赖粘合在一起他们。



文章来源: Incremental build in Jenkins