k_v*_*ath 5 java groovy jenkins jenkins-pipeline
我最近在 Jenkinsfile 中遇到了以下几行
def obj = new Foo(this, params)
obj.someMethod()
Run Code Online (Sandbox Code Playgroud)
this 关键字作为类构造函数的参数有什么用?
此关键字用于将管道步骤传递给库类、构造函数或仅一个方法
假设我有以下管道
pipeline{
agent any
stages {
stage {
steps {
echo "Inside Steps block"
script {
echo "Hello World"
sh 'date'
def obj = new Bar(this)
obj.test()
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
这就是类文件的样子
class Bar implements Serializable {
def steps
Bar(steps) {
this.steps = steps
}
void test() {
this.steps.echo 'Hello World inside class Method'
this.steps.sh 'date'
}
}
Run Code Online (Sandbox Code Playgroud)
因此,基本上,您可以在管道内执行的任何步骤都可以通过将此关键字传递给类构造函数来在 groovy 类中使用
更多信息可以从官方文档中找到
| 归档时间: |
|
| 查看次数: |
1158 次 |
| 最近记录: |