如何在Jenkinsfile中导入Groovy类?我试过几种方法,但都不奏效。
这是我要导入的类:
Thing.groovy
class Thing {
void doStuff() { ... }
}
这些都是不工作的东西:
Jenkinsfile-1
node {
load "./Thing.groovy"
def thing = new Thing()
}
Jenkinsfile-2
import Thing
node {
def thing = new Thing()
}
Jenkinsfile-3
node {
evaluate(new File("./Thing.groovy"))
def thing = new Thing()
}
您可以通过load命令返回一个新的类实例,并使用该对象调用"doStuff"
在"Thing.groovy"
class Thing {
def doStuff() { return "HI" }
}
return new Thing();
在dsl脚本中可以这样写:
node {
def thing = load 'Thing.groovy'
echo thing.doStuff()
}
应该在控制台输出中打印"HI"。
这个能满足你的要求吗?