我找到了这行
[compileJava, compileTestJava, javadoc]*.options*.encoding = 'UTF-8'
位于http://snippbin.com/XMql2MXd的gradle代码段中。
我很好奇如何解释这条线实际上在做什么。
答案 0 :(得分:1)
这实际上是一个Groovy问题。有关详情,请参阅Groovy operators中的点差运算符。
To"简化"这一点,这是做以下任务:
compileJava.options.encoding = 'UTF-8'
compileTestJava.options.encoding = 'UTF-8'
javadoc.options.encoding = 'UTF-8'
此options
的{{1}}很短,getOptions()
的{{1}}缩写encoding='UTF-8'
。原始代码中的spread运算符从提供的列表中收集所有选项到新的选项列表,然后下一个扩展运算符调用每个元素的setter。