Я новичок в Gradle и Groovy и пытаюсь понять, что происходит на уровне Groovy, когда задана задача Gradle.
task hello  { 
   println "configuring task hello" 
   doLast {
     println "hello there" 
   }
}
Из чтения книги "Gradle In Action" я знаю, что task hello {} - это действительно вызов метода task() интерфейса Groovy Project. На стр. 77 показано, что в интерфейсе Project
task(args: Map<String,?>, name:String)
task(args: Map<String,?>, name:String, c:Closure)
task(name: String)
task(name: String, c:Closure)
Я понимаю, что {} - тело замыкания.
Я не понимаю, как Groovy интерпретировать hello в task hello { } в соответствии с qaru.site/info/117593/... есть плагин для компилятора Groovy который преобразует task hello { } в task('hello', { })
Мои вопросы:
-  
Где я могу найти информацию о плагине компилятора Gradle Groovy, который выполняет преобразование?
 -  
Является ли утверждение, что Gradle скрипты Groovy программны технически неправильно, так как Gradle каким-то образом расширяет язык программирования Groovy?
 -  
Есть ли способ заставить команду
gradleраспечатать базовый код Groovy, который генерируется после запуска плагина компилятора?