如何使用两个单独的存储库(poms)设置Jenkins构建?

时间:2015-08-05 04:38:50

标签: java git maven jenkins pom.xml

我的项目结构如下:

核心

  • 的pom.xml

项目A

  • 的pom.xml

项目B

  • 的pom.xml

核心,项目A,项目B是单独的git存储库。我需要这种结构,因为我的所有项目都应该使用相同的核心设置(当我必须在核心中更改某些内容时,所有项目都会更新而不会出现问题)。

我已将以下依赖项添加到项目(项目A +项目B)pom:

<!-- Core -->
<dependency>
  <groupId>my-group</groupId>
  <artifactId>my-core</artifactId>
  <version>${my-core.version}</version>
</dependency>   

在我的本地机器上的eclipse中,它就像一个魅力。该项目找到核心,我能够运行所有的硒测试。

现在我想设置jenkins,一个工作应该包含Project A + Core,另一个工作是Project B + Core - 但我不知道该怎么做。我已经搜索了一些解决方案,但我不想设置一个Nexus。那么有一种简单的方法可以将我的核心+项目包含在詹金斯中吗?

期待您的回答!

2 个答案:

答案 0 :(得分:1)

您可以使用Multiple SCMs Plugin将所有存储库检索到作业的工作区,然后:

  1. 使用maven的install生命周期构建和安装核心项目(因此,my-core在Jenkins机器上的本地maven存储库中可用。)
  2. 构建项目A
  3. 构建项目B

答案 1 :(得分:0)

在Jenkins作业配置屏幕的SCM部分中,选择“多个SCM”。然后,您将看到可用SCM插件的下拉列表,其中的配置类似于为自由式作业配置构建步骤的方式。选择后,每个SCM插件都将显示其正常的配置选项集。

确保每个SCM签出都在工作区的单独子目录中完成,以避免SCM提供程序之间发生冲突。如果使用Mercurial,则此选项隐藏在“高级”部分中,因此请不要忘记配置它。

如果更改现有作业的SCM提供程序,建议您擦除工作区。