См. https://docs.gradle.org/current/javadoc/org/gradle/api/Script.html:
Этот интерфейс реализован всеми скриптами Gradle для добавления в некоторые специфичные для Gradle методы.Поскольку ваш класс скомпилированного скрипта будет реализовывать этот интерфейс, вы можете использовать методы и свойства, объявленные этим интерфейсом, прямо в вашем скрипте.
Это означает, что все ваши скрипты Gradle (проект, настройки или скрипты инициализации)реализовать этот интерфейс Script
, чтобы вы могли просто использовать this
в своем скрипте для доступа к соответствующему экземпляру Script
.
Например, если вы хотите получить доступ к Script.buildscript
и распечатать местоположение скрипта:
println "Current script file: " + ((Script)this).buildscript.getSourceFile()
- Из сценария сборки проекта это должно вывести:
Current script file: /path/to/project/build.gradle
- Из сценария инициализации (если
init.gradle
находится в каталоге USER_HOME / .gradle /):
Current script file: /path/to/userhome/.gradle/init.gradle