一尘不染

groovy.lang.MissingPropertyException:无此类属性:类的管理器:Script1

jenkins

我试图在Hudson内调用Groovy(使用groovy插件)来获取我们构建的一些属性。但是我得到了这个例外:

groovy.lang.MissingPropertyException:无此类属性:类的管理器:Script1

我得到以下行:

def buildNUmber = manager.build.number

当我在Jenkins中作为内联命令以及使用脚本运行时,会发生这种情况:

我尝试了以下解决方案,但在声明本身(第二行)期间失败:

Binding binding = new Binding();
binding.setVariable("manager", manager);
GroovyShell shell = new GroovyShell(binding);
shell.evaluate(new File("d:/dev/others/hudson/userContent/ScriptStuff.groovy").text);

上面的命令使用:Groovy命令运行。当我运行构建时,它出错并抱怨该行-binding.setVariable("manager", manager);

当我使用Groovy脚本文件时,它抱怨:

 def buildNumber = manager.build.number

这两个错误都是:groovy.lang.MissingPropertyException:无此类属性:类Script1的管理器

还尝试了该线程中提到的所有内容:

我正在使用Hudson 2.2.1和Groovy 2.1.3。有什么事吗


阅读 355

收藏
2020-07-25

共1个答案

一尘不染

也许我缺少了部分代码,但是您在哪里定义管理器?如果那是完整的Groovy脚本,那么您正在尝试绑定未声明任何内容的变量,因此不要怪异它失败了,对吧?

只需定义一个您想要的经理即可,例如:

def manager = "my manager" // probably not what you want

并且应该清除您当前的错误。

2020-07-25