У меня есть проект со многими модулями (10+). Внутри каждого build.gradle
файла есть задача:Динамически добавлять зависит от задачи градиента
task findbugs(type: FindBugs, dependsOn: ':MODULENAME:compileReleaseSources') {
ignoreFailures = true
classes = fileTree('build/intermediates/classes/release/')
source = fileTree('src/main/java/')
classpath = files()
... and so on
}
поэтому я хотел, чтобы извлечь эту задачу и создать пользовательский файл script.gradle
с этой задачей, и включить его в каждый build.gradle
с помощью apply from: script.gradle
.
И вот проблема: для этого необходимо включить MODULENAME в dependsOn
. Когда у меня была задача внутри каждого build.gradle
, проблем не было, потому что я только что закодировал соответствующее имя модуля (:app:compileReleaseSources, :firebase:compileReleaseSources
и т. Д.).
Есть ли способ динамически добавить MODULENAME?
Если применить сценарий к каждому модулю, я не думаю, что вам нужно 'приложение:' префикс. Вы пытались запустить его без префикса? –
Вам не нужно добавлять его, если у вас есть каждый модуль, это правда. Но если вы извлекаете задачу в другой файл, и вы применяете ее к другому модулю build.gradle, вы должны добавить, иначе вы получите исключение: «Задача с путём не существует в модуле XXX». –