【发布时间】:2016-08-16 03:15:27
【问题描述】:
我对在 gradle 中订购任务时应该何时使用 shouldRunAfter 和 mustRunAfter 中的哪一个有疑问。
【问题讨论】:
标签: gradle android-gradle-plugin
我对在 gradle 中订购任务时应该何时使用 shouldRunAfter 和 mustRunAfter 中的哪一个有疑问。
【问题讨论】:
标签: gradle android-gradle-plugin
这一切都有很好的记录,请查看here。特别是:
当你使用“must run after”排序规则时,你指定 taskB 必须始终在 taskA 之后运行,只要 taskA 和 taskB 都将 跑步。这表示为 taskB.mustRunAfter(taskA)。 “应该跑 after” 排序规则类似但不那么严格,因为它将被忽略 在两种情况下。首先,如果使用该规则会引入排序 循环。其次,当使用并行执行和所有依赖项时 除了“应该运行”任务之外,还满足了一项任务, 那么无论它是否“应该运行”,这个任务都会运行 之后”依赖项是否已运行。你应该使用“应该运行 之后”,其中排序有帮助但不是严格要求。
编辑 我也鼓励您阅读this 的帖子。
【讨论】:
mustRunAfter 用于严格排序,shouldRunAfter 并行执行时可能不服从。如果您觉得我的回答和说明有帮助,请接受回答。