У меня есть скрипт сборки Gradle ( build.gradle
), в котором я создал несколько задач. Эти задачи состоят в основном из вызовов методов. Вызываемые методы также есть в сценарии сборки.
Теперь вот ситуация:
Я создаю изрядное количество сценариев сборки, которые содержат разные задачи, но используют те же методы, что и исходный сценарий. Таким образом, я хотел бы каким-то образом извлечь эти «общие методы», чтобы я мог легко использовать их повторно вместо того, чтобы копировать их для каждого нового скрипта, который я создаю.
Если бы Gradle был PHP, идеальным было бы что-то вроде следующего:
//script content
...
require("common-methods.gradle");
...
//more script content
Но, конечно, это невозможно. Или это?
В любом случае, как я могу добиться такого результата? Как лучше всего это сделать? Я уже читал документацию Gradle, но, похоже, не могу определить, какой метод будет самым простым и лучше всего подходит для этого.
Заранее спасибо!
ОБНОВИТЬ:
Мне удалось извлечь методы в другой файл
(используя apply from: 'common-methods.gradle'
),
Итак, структура выглядит следующим образом:
parent/
/build.gradle // The original build script
/common-methods.gradle // The extracted methods
/gradle.properties // Properties used by the build script
Выполнив задачу из build.gradle
, я столкнулся с новой проблемой: очевидно, методы не распознаются, когда они находятся common-methods.gradle
.
Есть идеи, как это исправить?