How can I disable a task in build.gradle

前端 未结 4 1933
情歌与酒
情歌与酒 2020-12-15 15:30

I want to skip some tasks when I run gradle build. I know that it can be done from command line with -x:

gradle build -x unwantedTask 


        
相关标签:
4条回答
  • 2020-12-15 15:43

    For a bit more generic approach, you can:

    unwantedTask.onlyIf { <expression> }
    

    For instance:

    compileJava.onlyIf { false }
    

    Advanced IDEs, like IDEA, through code completion, will give you a lots of what you can do on any given object in the build.gradle - it's just a Groovy script, after all.

    0 讨论(0)
  • 2020-12-15 15:49

    You can try e.g.:

    unwantedTask.enabled = false
    
    0 讨论(0)
  • 2020-12-15 15:56

    Because I need to disable a bunch of tasks, so I use the following codes before apply plugin: in my build.gradle file:

    tasks.whenTaskAdded {task ->
        if(task.name.contains("unwantedTask")) {
            task.enabled = false
        }
    }
    
    0 讨论(0)
  • 2020-12-15 16:00

    As hinted to by @LukasKörfer in a comment, to really remove a task from the build, instead of just skipping it, one solution is to add this to your build script:

    project.gradle.startParameter.excludedTaskNames.add('yourTaskName')
    

    However this seems to remove the task for all subprojects.

    0 讨论(0)
提交回复
热议问题