如何将Groovy类导入到Jenkinfile中?



如何在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"。

这个能满足你的要求吗?

相关内容

  • 没有找到相关文章

最新更新