サーチ…


備考

mustRunAftershouldRunAfterは「インキュベート」(Gradle 3.0以降)とマークされています。これは実験的な機能であり、将来のリリースで動作が変更される可能性があることを示しています。

利用可能な注文ルールは2つあります。

  • mustRunAfter
  • shouldRunAfter

mustRunAfter順序付けルールを使用するときは、taskAとtaskBの両方が実行されるたびにtaskBが常にtaskAの後に実行される必要があることを指定します。

shouldRunAfter順序付けルールは、2つの状況で無視されるため、似ていますが厳密ではありません。

  • そのルールを使用している場合は、注文サイクルが導入されます。
  • 並列実行を使用していて、タスクのすべての依存関係が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