Поиск…


замечания

Обратите внимание, что 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


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow