Groovy .each只迭代一次
该脚本未遍历“模块”数组的所有值。
class Module { public String name = '';
public Boolean isCustom = false;
public Module(String name, Boolean custom){
this.name = name;
this.isCustom = custom;
}
}
//creates array from the ext_module env var
modules = [];
EXT_MODULE.split(',').each {
modules.add(new Module(it, false));
}
println modules;
modules.each {
println "MODULE NAME ::::: ${it.name}"
if(it.isCustom)
{
println "install custom";
} else {
println "install non custom";
}
};
这是运行的结果。该数组显示4个元素,但是.each黑色中的代码仅执行一次。
正在运行:打印消息[Module @ 71f09325,Module @ e1ddb41,Module @ 7069a674,Module @
1f68f952]正在
运行:打印消息模块名称::::: puppetlabs-ntp正在
运行:打印消息安装非自定义正在
运行:工作流结束已
完成:成功
回答:
消息“正在运行:打印消息”和“正在运行:工作流程结束”表示您正在使用新的工作流程插件:https : //wiki.jenkins-
ci.org/display/JENKINS/Workflow+Plugin。此插件当前存在一个错误,导致至少一些Groovy迭代(涉及一次关闭)在一次迭代后中止:https : //issues.jenkins-
ci.org/browse/JENKINS-26481
以上是 Groovy .each只迭代一次 的全部内容, 来源链接: utcz.com/qa/418741.html