gradle
Заказные задания
Поиск…
замечания
Обратите внимание, что
mustRunAfter
иshouldRunAfter
обозначаются как «инкубация» (shouldRunAfter
с Gradle 3.0), что означает, что это экспериментальные функции, и их поведение может быть изменено в будущих выпусках.
Доступны два правила заказа:
-
mustRunAfter
-
shouldRunAfter
Когда вы используете mustRunAfter
упорядочения mustRunAfter
вы указываете, что taskB должен всегда запускаться после taskA, когда запускаются оба taskA и taskB.
shouldRunAfter
упорядочения shouldRunAfter
аналогично, но менее строго, поскольку оно игнорируется в двух ситуациях:
- если использование этого правила вводит цикл упорядочения.
- при использовании параллельного выполнения и всех зависимостей задачи были выполнены отдельно от задачи
shouldRunAfter
, тогда эта задача будет выполняться независимо от того, были лиshouldRunAfter
ее зависимостиshouldRunAfter
.
Заказ с помощью метода mustRunAfter
task A << {
println 'Hello from A'
}
task B << {
println 'Hello from B'
}
B.mustRunAfter A
Линия B.mustRunAfter A
сообщает Gradle запускать задачу после задания задачи в качестве аргумента.
И выход:
> gradle -q B A
Hello from A
Hello from B
Правило упорядочения не вводит зависимость между задачами A и B, но имеет эффект только тогда, когда обе задачи запланированы для выполнения.
Это означает, что мы можем выполнять задачи A и B независимо.
Выход:
> gradle -q B
Hello from B