我们想了解一些遗留的job-dsl脚本,但不知道“斜杠运算符”在这种情况下意味着什么(因为它不能分割):
def command = (shells.first() / command)
我们试图在几本Groovy书中查找它,但只发现了一个简单的解决方案,它意味着“分裂”。
答案 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}}