Groovy 解释此代码的含义

Groovy 解释此代码的含义,groovy,Groovy,我找到电话线了 [compileJava, compileTestJava, javadoc]*.options*.encoding = 'UTF-8' 在位于的gradle代码段中 我很好奇如何解释这句话到底在做什么。这实际上是一个很好的问题。有关详细信息,请参阅中的扩展运算符 要稍微“简化”这一点,这需要执行以下任务: compileJava.options.encoding = 'UTF-8' compileTestJava.options.encoding = 'UTF-8' java

我找到电话线了

[compileJava, compileTestJava, javadoc]*.options*.encoding = 'UTF-8'
在位于的gradle代码段中


我很好奇如何解释这句话到底在做什么。

这实际上是一个很好的问题。有关详细信息,请参阅中的扩展运算符

要稍微“简化”这一点,这需要执行以下任务:

compileJava.options.encoding = 'UTF-8'
compileTestJava.options.encoding = 'UTF-8'
javadoc.options.encoding = 'UTF-8'

options
在这里是
getOptions()
的缩写,
encoding='UTF-8'
setEncoding('UTF-8')
的缩写。原始代码中的spread运算符将提供列表中的所有选项收集到一个新的选项列表中,然后下一个spread运算符调用每个元素上的setter。

谢谢,这很有帮助!。虽然这个问题看起来确实是腰围问题,但我真的不确定如何搜索我接受的答案中提到的操作员。在不知道这样一个操作员存在的情况下,我们如何搜索它。