Требуется ли знание Groovy для понимания Gradle?
Итак, я некоторое время пытался избежать создания инструментов, но начал использовать Gradle в течение некоторого времени. Я могу использовать его для простых вещей, например, позволяя загружать зависимости, как и предполагалось, но я видел, как люди используют его для работы с действительно продвинутыми сотрудниками, такими как управление большими проектами с различными модулями, родными зависимостями, публикация в Github при создании, и др.
Я чувствую, что мне все еще нужно много копировать, пытаясь сделать что-то более сложное, потому что даже после поиска какой-либо документации для чтения я все еще не уверен, где синтаксис языка, например {,},:, (,), предназначенные для использования.
Итак, мой вопрос: имеет ли смысл учиться Groovy лучше понимать Gradle? Нужно ли читать документы? Я даже не спрашиваю, потому что меня не интересует Groovy, мне просто интересно, как люди привыкли использовать Gradle, и имеет ли смысл использовать его для более сложных задач, чем выборки из репозиториев.
Ответы
Ответ 1
Gradle использует DSL (язык, специфичный для домена), который в настоящее время основан на вершине Groovy. Это означает, что вы должны иметь возможность работать с Gradle до некоторой степени, изучая только DSL. Это, конечно, наследует некоторый синтаксис из Groovy (например, круглые скобки и т.д.), Но синтаксис довольно далек от нормального кода Groovy.
Если вы хотите начать писать свои собственные закрытия, задачи и плагины, тогда вам нужны навыки Groovy, да. Groovy в Action 2nd edition - отличная книга, или если вы разработчик Java, посмотрите Создание Java Groovy.
Говоря об этом, помните, что Gradle Inc объявила о том, что они будут поддерживать Kotlin в качестве другого языка для создания DSL на, Это означает, что вы сможете написать "пользовательские" части своей сборки в Kotlin или Groovy. Итак, следите за Котлином, здесь лучший способ сделать это - Kotlin in Action.
Ответ 2
-
Чтобы просто использовать Gradle, вы можете пойти без понимания Groovy.
-
Чтобы понять, как работает синтаксис Gradle файла, вам определенно нужно понять Groovy. Люди обычно борются с Gradle, когда скрипты становятся сложными.
Gradle использует в основном язык ваниль Groovy как язык, но в документации и большинстве примеров используется определенный стиль, который отличается от самого обычного стиля при написании другого кода Groovy.
Но за исключением одного плагина компилятора (для превращения некоторых имен без кавычек в строки), все Gradle код также действителен Groovy, и вы можете написать любой файл Gradle в том же стиле, который вы пишете любой другой Groovy файл.