防止 gradle 跳过任务

Mil*_*ilk 4 gradle build.gradle

我有一堆按顺序运行的任务,有些是根据属性文件中的值跳过的。

在不更改属性或原始任务定义的情况下,如何告诉 Gradle跳过任务?

我试过添加

myTask.onlyIf { true }
Run Code Online (Sandbox Code Playgroud)

但这似乎并没有覆盖现有的onlyIf调用。

Luk*_*fer 5

只需使用赋值运算符:

myTask.onlyIf = { true }
Run Code Online (Sandbox Code Playgroud)

这将调用 方法setOnlyIf(Closure)而不是onlyIf(Closure),这将替换所有现有检查而不是添加新检查。

Gradle 经常提供添加新参数的方法和覆盖先前设置的参数的设置器。

请注意,这可能不适用于执行最新任务。这只会影响由于先前设置的onlyIf关闭而将被跳过的任务。