我正在尝试使用groovy脚本从jenkins收集数据并收到错误:
无法解析类com.cloudbees.hudson.plugins.folder.Folder
以下是代码:
import jenkins.model.*
import hudson.model.*
import groovy.time.TimeCategory
use ( TimeCategory ) {
// e.g. find jobs not run in last 1 year
sometimeago = (new Date() - 1.year)
}
jobs = Jenkins.instance.getAllItems()
lastabort = null
jobs.each { j ->
if (j instanceof com.cloudbees.hudson.plugins.folder.Folder) { return }
numbuilds = j.builds.size()
if (numbuilds == 0) {
println 'JOB: ' + j.fullName
println ' -> no build'
return
}
lastbuild = j.builds[numbuilds - 1]
if (lastbuild.timestamp.getTime() < sometimeago) {
println 'JOB: ' + j.fullName
println ' -> lastbuild: ' + lastbuild.displayName + ' = ' + lastbuild.result + ', time: ' + lastbuild.timestampString2
}
}
错误是:
rg.codehaus.groovy.control.MultipleCompilationErrorsExceptio N: 启动失败:Script1.groovy:12:无法解析课程 com.cloudbees.hudson.plugins.folder.Folder @第12行,第20栏。如果(j instanceof com.cloudbees.hudson.plugins.folder.Folder){return} ^ 1 错误 org.codehaus.groovy.control.ErrorCollector.failIfErrors(ERRO rCollector.java:302)
答案 0 :(得分:1)
我在Folder.java
中看到jenkinsci/cloudbees-folder-plugin
。
这意味着你需要:
import com.cloudbees.hudson.plugins.folder.*
”以确保脚本能够使instanceOf
正常工作。