您已接近第一个解决方案。
实际上,您需要做的就是
Cause根据其类型对它的祖先进行迭代。
这是一个示例代码片段,可以帮助您入门:
def printCausesRecursively(cause) { if (cause.class.toString().contains("UpstreamCause")) { println "This job was caused by " + cause.toString() for (upCause in cause.upstreamCauses) { printCausesRecursively(upCause) } } else { println "Root cause : " + cause.toString() }}for (cause in manager.build.causes){ printCausesRecursively(cause)}您可能需要参考文档来处理所有
Cause类型:http : //javadoc.jenkins-
ci.org/hudson/model/Cause.html
希望能帮助到你,
最好



