【发布时间】:2026-01-14 07:50:02
【问题描述】:
我正在使用 Jenkins 在 GitHub 中构建一些 Ivy 项目(每个项目包含多个组件)。
比方说,我有 Ivy 项目 A(包含组件 a1、a2、a3)、B(包含组件 b1 和 b2)和 C(组件 c1、c2、c3、c4)。每个组件都有自己的ivy.xml 文件。
我在 Jenkins 中创建了一个 Ivy 作业,我有一个变量用于设置 GitHub 项目的名称,然后作业会克隆存储库。
例如,在我拥有的作业的“GitHub 项目”字段中:https://mygithub.com/myorg/${project},而 project 是作业参数,可以是 A、B 或 C。
当我触发作业时,假设传递 ${project} = A,我希望构建组件 a1、a2 和 a3。这确实发生了。
但是,我还在控制台输出的末尾得到以下几行:
Warning: you have no plugins providing access control for builds, so falling back to legacy behavior of permitting any downstream builds to be triggered
Triggering a new build of Build_and_JUnit » Build-develop » myorg.projectB.b1
Triggering a new build of Build_and_JUnit » Build-develop » myorg.projectC.c1
Triggering a new build of Build_and_JUnit » Build-develop » myorg.projectC.c3
Triggering a new build of Build_and_JUnit » Build-develop » myorg.projectC.c4
Finished: SUCCESS
(ps.:这些只是例子)
... 组件 b1、c1、c3 和 c4 已构建!
我不知道 Jenkins 为什么要构建其他组件,因为我只要求构建 A。这些组件甚至不是 A 组件的依赖项。
顺便说一句,构建的组件集是随机的——甚至不一致。我认为这与第一行的警告有关。
有什么想法吗?
【问题讨论】: