单行中的 Jenkins DSL 不起作用



需要帮助了解詹金斯DSL格式以及如何影响工作创建/执行

以下DSL脚本

以下示例
job('readyForIntegration'){ displayName('Good For Integration Testing') 
parameters{ stringParam('param1') } }

如果我在上述文本中有工作,则该作业失败了,因为"处理"提供了DSL脚本java.lang.nullpointerexception:null对象上的无法调用方法参数()。

但是,如果我编写了相同的脚本,则使用下面的缩进/格式化工作

job('readyForIntegration'){ 
 displayName('Good For Integration Testing') 
 parameters{ 
  stringParam('param1') 
 } 
}

这与Groovy有关。在Groovy中,只要我们每行使用一个语句,我们就可以在行末端排除分号。如果我们在行上使用多个语句,则必须使用半隆来分开语句。

因此,如果您希望您的代码在一行中,则应执行

job('readyForIntegration'){displayName('Good For Integration Testing') ;parameters{ stringParam('param1') } }

最新更新