jenkins - 将列表从一个 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 文件导入另一个文件的有效方法的好心建议。
解决方案
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()
推荐阅读
- elasticsearch - 在集群上的重负载时刻,Elasticsearch 是否会产生不准确的聚合?
- mysql - 实体继承模型中的MySql选择查询,如何?
- javascript - 一些特定的架构或设计模式?
- html - PrimeNG 组件菜单步骤,我如何使用 ui-steps-incomplete
- java - 检测与线的碰撞并限制移动
- linux - Linux SHELL 脚本,读取每一行的不同列数
- python - 使用python将未训练的对象分类为机器学习中的未知对象
- javascript - 使用观察者设计模式的理由
- android - 无法解决:com.google.android.gms:play-services
- pandas - Pandas - 根据值过滤掉列