无法在null对象上调用方法getNodeName()

时间:2015-04-23 16:36:09

标签: groovy jenkins jenkins-scriptler

我正在使用scriptler jenkins插件执行简单的groovy脚本。

import hudson.model.Computer
import hudson.model.Node

println Computer.currentComputer().getNodeName()

如果我在master或任何slave上执行此操作,请给我NullPointerException

java.lang.NullPointerException: Cannot invoke method getNodeName() on null object
        at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:77)
        at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:45)
        at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
        at org.codehaus.groovy.runtime.callsite.NullCallSite.call(NullCallSite.java:32)
        at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
        at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)

不确定脚本有什么问题。

2 个答案:

答案 0 :(得分:1)

您发布的代码只能用于"执行系统Groovy脚本"中的特定作业。 (这是你的工作配置)。

答案 1 :(得分:0)

java.lang.NullPointerException: Cannot invoke method getNodeName() on null object表示Computer.currentComputer().getNodeName() Computer.currentComputer()返回null。至于为什么呢?没有足够的信息来回答这个问题