У меня есть Gradle build script (build.gradle
), в котором я создал некоторые задачи. Эти задачи состоят в основном из вызовов методов. Вызываемые методы также находятся в сборке script.
Теперь, вот ситуация:
Я создаю большое количество скриптов сборки, которые содержат разные задачи, но используют те же методы из исходного script. Таким образом, я хотел бы каким-то образом извлечь эти "общие методы", поэтому я могу легко использовать их вместо копирования для каждого нового script, который я создаю.
Если Gradle были PHP, то было бы идеально:
//script content
...
require("common-methods.gradle");
...
//more script content
Но, конечно, это невозможно. Или это?
В любом случае, как я могу достичь этого результата? Каков наилучший способ сделать это? Я уже прочитал документацию Gradle, но я не могу определить, какой метод будет самым простым и наиболее подходящим для этого.
Спасибо заранее!
UPDATE:
Мне удалось извлечь методы в другом файле
(используя 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
.
Любые идеи о том, как это исправить?