gradle任务定义语法

gradle任务定义语法,gradle,groovy,Gradle,Groovy,gradle文档说我在build.gradle文件中声明任务的方式应该是 task greeting(type: GreetingTask) { greeting = 'greetings from GreetingTask' } 有人能用groovy语法向我解释一下这里发生了什么吗? 我知道{}块是闭包,它可以作为一个参数传递给函数,但我仍然不知道这里发生了什么任务关键字是一个渐变特定的东西。它不是标准的groovy,而是gradle使用AST转换添加的东西,以使DSL更简单。基本上

gradle文档说我在build.gradle文件中声明任务的方式应该是

task greeting(type: GreetingTask) {
    greeting = 'greetings from GreetingTask'
}
有人能用groovy语法向我解释一下这里发生了什么吗?
我知道
{}
块是闭包,它可以作为一个参数传递给函数,但我仍然不知道这里发生了什么任务
关键字是一个渐变特定的东西。它不是标准的groovy,而是gradle使用AST转换添加的东西,以使DSL更简单。基本上相当于

project.tasks.create([name: 'greeting', type: GreetingTask]) { ... }

请参见

在函数调用之后执行闭包意味着什么?@JB nizett这是标准的groovy语法。这相当于将闭包作为最后一个参数