Groovy configslurper在输入中不接受字符串

时间:2019-06-26 15:36:29

标签: jenkins groovy jenkins-pipeline config

我想先说一下,在SCM重设詹金斯实例之前,这一切都是可行的,我不确定它们发生了什么变化,但它破坏了这一点。

我有一个配置:

program {
AS{
   server=["serv1","serv2","serv3"]
}
}

在我的脚本中,我用它来获取配置

def String groovy_properties_file = "/path/to/scripts/config.groovy"
def config = new ConfigSlurper().parse(new File(groovy_properties_file).toURL())

我本来是要为要使用的程序输入参数的,但是现在当使用字符串而不是对配置进行硬编码时,似乎给了我一个错误。

例如:

def programConfig = config.program.AS

def programConfig = config.program."AS"

工作正常。

但将AS设置为变量

    String progString =  "AS"
    def programConfig = config.program."${progString}"

  if(!programConfig ){
  //Error Case
}

这将导致错误情况并引发异常。我无法完全弄清差异或造成此差异的原因。

0 个答案:

没有答案