有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何禁用Gradle组中的所有任务?

渐变任务可以分组,如下所示:

task spotbugs(type: SpotBugsTask, dependsOn: "assemble", group: "verification")

然而,我还没有发现这个小组有什么实际用途。我希望禁用组verification中的所有任务,这似乎是不可能的。我知道我可以使用-x跳过特定任务,或者我可以使用onlyIf自定义属性或使用enabled = false禁用任务;我的问题是我是否可以禁用该组

有什么想法吗


共 (1) 个答案

  1. # 1 楼答案

    当您想要动态禁用任务时,您需要考虑Gradle决定执行哪些任务,然后禁用任何符合条件的任务。为此,可以使用task graph

    project.gradle.taskGraph.whenReady { graph ->
        graph.allTasks.findAll { it.group == 'verification' }.each { it.enabled = false }
    }
    

    现在,如果组verification中的任何任务计划执行,它们将被禁用(跳过)