У меня многопроектная зависимость в моей конструкции градации, но есть функция, которая несколько в моем пути. Всякий раз, когда я вызываю имя задачи, которое существует в обоих проектах, он вызывает их обоих. Мне это не нравится.Gradle: многопроектная зависимость: задачи одного и того же имени выполняются вместе
Моя структура каталогов выглядит следующим образом:
[Root]
---->[projA]
----------->build.gradle
---->[projB]
----------->build.gradle
Так что я projB зависит от projA в моем коде. Скажем, у меня есть запуск задачи в projB:
task run << {
println 'projB running'
}
И я также запуск задачи в projA:
task run << {
println 'projA running'
}
, позвонив Gradle запустить, я хотел бы получить
:run
projB running
:projA:run
projA running
Есть ли способ предотвратить выполнение некоторыми из задач этой зависимости? Некоторые из них, скажем, clean все в порядке, но я предпочел бы, чтобы отдельные задачи выполнялись отдельно (без изменения схемы именования).
эквивалент того, что я хочу, может быть достигнуто, выполнив:
gradle run -x :projA:run
или
gradle :run
Я хочу, чтобы решение, которое в файле сборки, хотя.
Спасибо!
Если вы знаете, что хотите выполнить задачу 'run' для определенного подпроекта, почему бы не сказать Gradle об этом в командной строке, например. через 'gradle: projB: run'? Это выполнит только задачу 'run' для проекта' projB', но не для 'projA'. –
Потому что я хочу что-то в файле сборки ... – AlexG