groovy 全局变量不能在Jenkinsfile的函数中使用

mfpqipee  于 2023-04-05  发布在  Jenkins
关注(0)|答案(1)|浏览(178)

Jenkinsfile是这样的:

def globalVariable = "my variable"

def myFunction() {
    def myString = "my String and ${globalVariable}
    .....
}

pipeline {
    ...
    < The globalVariable can be accessed inside the pipeline >  
}

我收到一个运行时错误,抱怨globalVariable无法在myFunction中访问。
我认为globalVariable是全局的,可以从文件的任何地方访问。
我可以在函数内部引用它吗?

jyztefdp

jyztefdp1#

你可以在def中添加@Field,这样函数就可以读取它了:

import groovy.transform.Field

@Field def globalVariable = "my variable"

def myFunction() {
    def myString = "my String and ${globalVariable}
    .....
}

pipeline {
    ...
    < The globalVariable can be accessed inside the pipeline >  
}

相关问题