Continuous integration 连续集成工具中的多个依赖项目

Continuous integration 连续集成工具中的多个依赖项目,continuous-integration,hudson,Continuous Integration,Hudson,如何设置continuous integration server来构建多个相关项目 我想为托管在mercurial存储库上的项目设置持续集成过程。但是,该项目在编译时依赖于另一个托管在不同mercurial存储库中的项目(两者都托管在Google上) 使用Hudson,如何为两个项目设置CI作业(同时将一个项目的二进制位置传递给另一个项目构建脚本)?其他工具处理得更好吗 这两个项目都是带有Ant构建脚本的Java项目。在巡航控制中,您有集成队列。您只需按照您想要的顺序将两个项目放在同一个队列中

如何设置continuous integration server来构建多个相关项目

我想为托管在mercurial存储库上的项目设置持续集成过程。但是,该项目在编译时依赖于另一个托管在不同mercurial存储库中的项目(两者都托管在Google上)

使用Hudson,如何为两个项目设置CI作业(同时将一个项目的二进制位置传递给另一个项目构建脚本)?其他工具处理得更好吗


这两个项目都是带有Ant构建脚本的Java项目。

在巡航控制中,您有集成队列。您只需按照您想要的顺序将两个项目放在同一个队列中,它们将一个接一个地构建。

我建议您研究一下Maven(或者如果您不想转移到Maven,Ivy,它与Ant集成),处理您所说的工件依赖性并不是CI服务器的工作


也就是说,如果您在Hudson服务器上有两个作业,例如,作业a和作业b,那么您可以将作业a配置为归档其工件(包括作业b中需要的jar文件),然后在作业b完成时启动作业b。然后,在job_b中,您可以使用ant的get任务从(etc)下载jar文件。在那个位置总会有一些东西,因为它是job_a的最后一个稳定构建的符号链接,所以你不必担心job_b运行时找不到它需要的jar文件。

Hudson应该能够处理这个问题,因为Hudson支持两个依赖构建(换句话说,一个构建可以在另一个构建完成后启动)和

根据,可以:

将Hudson配置为发布构建工件,然后通过HTTP将这些工件获取到依赖构建。您希望从属生成的位置独立于第一个生成的位置

消息的作者提供了更多的细节,这可能也会有所帮助