jenkins - groovy.lang.MissingPropertyException : No such property: pipeline for class: groovy. lang.Binding

标签 jenkins groovy jenkins-pipeline

我有一个简单的 jenkins 文件,如下所示:

pipeline { 
agent any 
stages {
    stage('Build') { 
        steps { 
            sh './mvnw compile' 
        }
    }
    stage('Test'){
        steps {
            sh './mvnw test'
        }
    }
  }
}

以及一个带有存储库 URL 和凭据的简单 Jenkins 管道(我可以确认凭据没问题,否则 jenkins 会立即给出错误)。

但是当我运行此管道时,出现如下错误:

groovy.lang.MissingPropertyException: No such property: pipeline for class: 
groovy.lang.Binding
at groovy.lang.Binding.getVariable(Binding.java:63)
at 
org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.
SandboxInterceptor.onMethodCall(SandboxInterceptor.java:130)
at org.kohsuke.groovy.sandbox.impl.Checker$1.call(Checker.java:155)
    at org.kohsuke.groovy.sandbox.impl.Checker.checkedCall(Checker.java:159)
    at 
com.cloudbees.groovy.cps.sandbox.SandboxInvoker.methodCall
(SandboxInvoker.java:17)
    at WorkflowScript.run(WorkflowScript:1)
    at ___cps.transform___(Native Method)
    at com.cloudbees.groovy.cps.impl.ContinuationGroup.methodCall
 (ContinuationGroup.java:57)
    at 
com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.
dispatchOrArg
(FunctionCallBlock.java:109)
at com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.
fixArg(FunctionCallBlock.java:82)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498) 
    at 
 com.cloudbees.groovy.cps.impl.ContinuationPtr$ContinuationImpl.receive
 (ContinuationPtr.java:72)
    at com.cloudbees.groovy.cps.impl.ClosureBlock.eval(ClosureBlock.java:46)
    at com.cloudbees.groovy.cps.Next.step(Next.java:83)
    at com.cloudbees.groovy.cps.Continuable$1.call(Continuable.java:174)
    at com.cloudbees.groovy.cps.Continuable$1.call(Continuable.java:163)
    at org 
 .codehaus.groovy.runtime.GroovyCategorySupport$ThreadCategoryInfo.use
 (GroovyCategorySupport.java:122)
     at org.codehaus.groovy.runtime.GroovyCategorySupport.use
(GroovyCategorySupport.java:261)
    at com.cloudbees.groovy.cps.Continuable.run0(Continuable.java:163)
    at org.jenkinsci.plugins.workflow.cps.SandboxContinuable.access$101
(SandboxContinuable.java:34)
    at org.jenkinsci.plugins.workflow.cps.SandboxContinuable.
 lambda$run0$0(SandboxContinuable.java:59)
    at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.GroovySandbox.
runInSandbox(GroovySandbox.java:108)
    at org.jenkinsci.plugins.workflow.cps.SandboxContinuable.run0
(SandboxContinuable.java:58)
    at org.jenkinsci.plugins.workflow.cps.CpsThread.runNextChunk
(CpsThread.java:174)
at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.run
(CpsThreadGroup.java:332)
at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.access$200
(CpsThreadGroup.java:83)
at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call
(CpsThreadGroup.java:244)
at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call
(CpsThreadGroup.java:232)
at org.jenkinsci.plugins.workflow.cps.CpsVmExecutorService$2.call
(CpsVmExecutorService.java:64)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at hudson.remoting.SingleLaneExecutorService$1.run
(SingleLaneExecutorService.java:131)
at jenkins.util.ContextResettingExecutorService$1.run
(ContextResettingExecutorService.java:28)
at jenkins.security.ImpersonatingExecutorService$1.run
(ImpersonatingExecutorService.java:59)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker
(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run
(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Finished: FAILURE

我是 groovy 的新手,但这似乎很奇怪。我尝试关注 stackoverflow 上的其他问题,但没有任何帮助。

如果有人以前遇到过这种情况,您的指导将会有所帮助,我们将非常感激。

非常感谢, -潘卡杰

最佳答案

这似乎是“Script Security Plugin 1.45”的插件问题。 就我而言,通过更新到 1.46 解决了该问题。

关于jenkins - groovy.lang.MissingPropertyException : No such property: pipeline for class: groovy. lang.Binding,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52194835/

相关文章:

grails - 如何以Groovier方式查询?

Jenkins 管道 - 全局管道库更新显示在作业的最近更改列表中,如何防止这种情况?

amazon-web-services - 如何使用 Jenkins 通过 SSH 连接到带有受密码保护的私钥 pem 文件的 EC2 实例

git - 如何知道哪个 git 分支触发了 jenkins 作业

ios - 此版本的 OSX 无法执行必要的 dSYM 转换

interface - 我应该用 Duck Typed 语言定义接口(interface)吗?

groovy - 为什么这个顶级 Groovy 类不能是静态的?

jenkins - 从Jenkins管道检查gradle子项目是否存在

node.js - 如何在 Jenkins 管道中使用 SSH?

maven - 放置大型测试数据集的最佳实践?