我们有 4 个项目
。
A
、B
、C
、D
。
A
、B
、C
对我们应用程序中的其他项目没有本地依赖性。
项目D
需要依赖于A
、B
、C
。
我很好奇如何设置 Jenkins 来构建项目 D
。我是否需要更新 maven pom 文件以从我们的 jenkins 服务器构建为存储库依赖项,或者是否可以直接通过 jenkins 设置以便在构建 D
时能够使用 A
、B
、C
中的目标。
所有存储库都存储在 Github
中。
更新
我想将这些项目设置为“Maven 项目”、“管道”还是“自由式项目”吗?
我可以看到,您可以将后期操作设置为“将 Artifact 部署到 Maven 存储库”,然后我是否也可以将其设置为“构建其他项目”,以便在构建 A/B/C 时,它们都设置为具有 D 的“构建其他项目”?
谢谢
最佳答案
您可以使用parameterized-trigger
和“阻止直到触发的项目完成其构建”
选项来告诉jenkins:
- 构建 D 时触发 A、B 和 C 上的构建
- 阻止 D 构建执行,直到 A、B 和 C 成功构建。
假设在一个jenkins节点上构建了4个项目,那么当它们的maven构建成功时,A、B和C Artifact 将安装在该节点的本地repo .m2
上,D可以直接找到它们。您不必更改您的 pom。
关于java - 如何设置 Jenkins 从应用程序内具有依赖关系的其他 Maven 项目构建 Maven 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38841708/