该脚本未遍历“模块”数组的所有值。
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