Groovy斜杠运算符(Jenkins job-dsl)

时间:2015-01-26 16:08:58

标签: groovy jenkins jenkins-plugins jenkins-job-dsl

我们想了解一些遗留的job-dsl脚本,但不知道“斜杠运算符”在这种情况下意味着什么(因为它不能分割):

def command = (shells.first() / command)

我们试图在几本Groovy书中查找它,但只发现了一个简单的解决方案,它意味着“分裂”。

1 个答案:

答案 0 :(得分:7)

它是一个XML Node操作,用于返回XML节点的子节点,或者如果它不存在则创建它。可能是command节点中第一个shells节点下的NodeEnhancement节点。

Groovy允许operator overloading,因此 相同" division"运算符,稍微重新定义。这在其他语言中很常见(但也存在争议),允许运营商过载,但允许更丰富的DSL。

快速浏览一下JobDSL source的旧版本,似乎他们正在使用类/** Add div and leftShift operators to Node. div - Will return the first child that matches name, and if it doesn't exists, it creates ... **/ 来做这件事,特别是这个JavaDoc:

{{1}}