首页 > 解决方案 > 将列表从一个 groovy 文件导入到另一个

问题描述

我有两个 groovy 文件。

首先.groovy:

class First {

    def getContent() {
        content = ["one", "two"]
    }
}

return this

第二个.groovy:

{
    node(label) {

        def listClass = this.class.classLoader.parseClass("First.groovy")
        def CONTENT=listClass.getContent()
}

当我运行工作时,我从詹金斯那里得到错误:

hudson.remoting.ProxyException:groovy.lang.MissingMethodException:没有方法签名:java.lang.Class.getContent() 适用于参数类型:() 值:[]

关于将列表从一个 groovy 文件导入另一个文件的有效方法的好心建议。

标签: jenkinsgroovy

解决方案


Jenkins 为您的案例提供方法load(filepath),因此您不必处理所有类加载器方法。

您不一定需要class在您的First.groovy所以只需将其删除。

第一个.groovy

def getContent() {
    def content = ["one", "two"]
    return content
}

return this;

并称它为:

def first = load 'First.groovy'
def content = first.getContent()

推荐阅读