谁能解释/评论这部分 Groovy 代码?
task copyImageFolders(type: Copy) {
from('images') {
include '*.jpg'
into 'jpeg'
}
from('images') {
include '*.gif'
into 'gif'
}
into 'build'
}
更具体地说是from method . 这是这个
from(sourcePaths)
或者
from(sourcePath, configureAction)
如果它有 2 个参数,为什么要这样写而不是这样:
from('images', {
include '*.jpg'
into 'jpeg'
})
最佳答案
简短的回答是它正在调用 from(sourcePath, configureAction)
。
Groovy 在许多情况下都有可选的括号,并接受括号外的最后一个参数(如果它是闭包),在这种情况下,这就是您传递给 from()
的闭包。
This是一篇很好的博文,如果您想要更多示例和 this,可以将闭包传递给 Groovy 中的方法的不同方式。一般提供更多可选括号的示例。
关于Gradle/Groovy 语法困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49996424/