Czy taskB mustRunAfter taskA, lub taskB dependsOn taskA, wydaje się, że taskA działa jako pierwszy, a następnie taskB. Co za różnica?Jaka jest różnica między mustRunAfter i dependsOn in Gradle?
5
A
Odpowiedz
1
Czasami mają ten sam efekt. Na przykład, jeśli taskC zależyO zadaniaA i taskB, to nie ma znaczenia, czy taskB zależyO z taskA, czy mustRunAfter it - po uruchomieniu taskC, kolejność będzie taskA, taskB, taskC.
Ale jeśli taskC zależy tylko od zadaniaB, to jest różnica. Jeśli taskB zależy na taskA, to jest takie samo jak powyżej - taskA, taskB, taskC. Jeśli taskB po prostu musiRunAfter taskA, to taskA nie uruchomi się, a uruchomienie taskC uruchomi taskB, a następnie taskC.
mustRunPo rzeczywiście oznacza jeśli zadanie A działa na wszystkich, to taskB musi zostać uruchomione po nim.
9
Na przykład:
tasks.create('a')
tasks.create('b').dependsOn('a')
tasks.create('c')
tasks.create('d').mustRunAfter('c')
dependsOn
- zestawy zależności zadanie. Wykonywanieb
wymagałoby tutaj najpierw wykonaniaa
.mustRunAfter
- ustawia porządek zadań. Wykonywanied
nie wymagac
. Ale gdy włączone są obac
id
,c
zostanie wykonane przedd
.
Dokładnie tego, czego szukałem. Dziękuję Ci. –