seed-job 无法解析构建用户变量插件

seed-job fails fails to parse build user vars plugin

我的 Jenkins 作业(管道脚本)中有以下代码:

def user_id = ''
wrap([$class: 'BuildUser']) {
    addBadge text: env.BUILD_USER + ', ' + params.Computer
    user_id = env.BUILD_USER_ID.toLowerCase()
}   

但是代码在种子作业中失败了:

javaposse.jobdsl.dsl.DslException: startup failed:
script: 106: unexpected token: class
       wrap([$class: 'BuildUser']) {
              ^

1 error

我找到了这个 suggestion 但是 groovy 语法抛出错误:unexpected char : '\'

知道如何解决这个问题吗?

解决方案是将整个脚本代码用单引号代替双引号(在 myjob.jobdsl 文件中):

definition {
 cps {
  script('''
   def user_id = ''
   wrap([$class: 'BuildUser']) {
      addBadge text: env.BUILD_USER + ', ' + params.Computer
      user_id = env.BUILD_USER_ID.toLowerCase()
   }
  ''')
 }
}