Статьи

Интерфейс Gradle: метаданные сборки Gradle

Как я показал в предыдущих статьях, таких как « Определение соглашений Gradle » и « Развитие сборки Gradle из сборки Ant: импорт файла сборки Ant », важную информацию о сборке Gradle можно получить, обратившись к API Gradle через Groovy . В этом посте я продемонстрирую доступ к базовым деталям сборки Gradle через интерфейс Gradle .

Интерфейс org.gradle.api.invocation.Gradle доступен в файле сборки Gradle с помощью просто «gradle» [что неявно соответствует getGradle () на языке Groovy]. Следующий список скриптов сборки Gradle показывает подмножество метаданных, доступных через интерфейс Gradle .

наращивание Gradle-interface.gradle

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
// build-gradle-interface.gradle
apply plugin: 'java'
 
println "Class: ${this.getClass().canonicalName}"
println "Gradle: ${gradle.getClass().canonicalName}"
println "Ant: ${ant.getClass().canonicalName}"
println "Root Project: ${rootProject.getClass().canonicalName}"
 
println "\n=== Gradle ==="
println "\tgradleVersion = ${gradle.gradleVersion}"
println "\tgradleHomeDir = ${gradle.gradleHomeDir}"
println "\tgradleUserHomeDir = ${gradle.gradleUserHomeDir}"
 
println "\n=== Gradle.startParameter ==="
def startParameter = gradle.startParameter
println "\tcurrentDir = ${startParameter.currentDir}"
println "\tprojectDir = ${startParameter.projectDir}"
println "\tgradleUserHomeDir = ${startParameter.gradleUserHomeDir}"
println "\tbuildFile = ${startParameter.buildFile}"
println "\tprojectProperties = ${startParameter.projectProperties}"
println "\tsystemPropertiesArgs = ${startParameter.systemPropertiesArgs}"
println "\ttaskNames = ${startParameter.taskNames}"

Когда я запускаю сборку Gradle выше и указываю, что должна выполняться задача « jar » ( задача, предоставляемая плагином Java ), вывод будет выглядеть следующим образом:

gradleInterface

Приведенный выше список сборки и соответствующий снимок экрана показывают, что интерфейс Gradle предоставляет метаданные, такие как версия Gradle, домашний каталог установки Gradle и каталог пользователя Gradle. Интерфейс Gradle также предоставляет доступ к экземпляру StartParameter, который предоставляет дополнительные сведения о метаданных запуска сборки, такие как каталог проекта, текущий каталог, имя файла сборки, свойства проекта, системные свойства и имена задач, которые были указаны для выполнения. ,

Существует значительно больше информации, которую можно почерпнуть о сборке Gradle из интерфейса Gradle и в этом посте показана только часть этой информации.

Ссылка: Интерфейс Gradle: Метаданные Gradle Build от нашего партнера JCG Дастина Маркса в блоге Inspired by Actual Events .