Я новачок у Gradle та Groovy і намагаюся зрозуміти, що відбувається на рівні groovy, коли визначається завдання gradle.
task hello {
println "configuring task hello"
doLast {
println "hello there"
}
}
Читаючи книгу "Gradle In Action", я знаю, що task hello {}це справді виклик task()методу groovy Projectінтерфейсу. На сторінці 77 показано, що на Projectінтерфейсі є 4 методи, які називаються task
task(args: Map<String,?>, name:String)
task(args: Map<String,?>, name:String, c:Closure)
task(name: String)
task(name: String, c:Closure)
Я розумію, що {}це орган закриття.
Те , що я не розумію, як робить заводний інтерпретувати helloв task hello { }відповідно до https://stackoverflow.com/a/25592665/438319 є заводний компілятор плагін , який перетворює task hello { }вtask('hello', { })
Мої запитання:
Де я можу знайти інформацію про плагін Gradle Groovy Compiler, який виконує перетворення?
Чи твердження про те, що сценарії Gradle є groovy-програмами, є технічно неправильним, оскільки gradle якимось чином розширює мову програмування Groovy?
Чи є спосіб отримати
gradleкоманду для роздруківки базового groovy коду, який генерується після запуску модуля компілятора?