美文网首页
Gradle中任务的操作

Gradle中任务的操作

作者: dashingqi | 来源:发表于2021-03-30 00:50 被阅读0次
Android_Banner.jpg

任务的创建

使用任务名称创建
def Task t1 = task(t1)
    t1.doLast {
        println "this is t1"
    }
任务名称➕任务配置创建
 def Task t3 = task(t3, group: BasePlugin.BUILD_GROUP)
    t3.doLast {
        println "this is t3"
    }
TaskContainer的create方法创建
 tasks.create(name: "t2") {
        doLast {
            println "this is t2"
        }
    }

任务的创建都会调用tasks的create方法,其中tasks类型为TaskContainer

任务的依赖

任务的依赖会决定任务运行的先后顺序,被依赖的任务会在定义依赖任务之前执行

task dep1 {
        doLast {
            println "this is dep1"
        }
    }

    task dep2(dependsOn: dep1) {
        doLast {
            println "this is dep2"
        }
    }

使用gradle -q dep2 执行dep2执行结果如下

this is dep1
this is dep2

任务分组和描述

Gradle有任务组概念,可以为任务配置分组和描述以便于更好的管理任务

 task g1{
        group = "baidu"
        description = "baidu app"
        doLast{
            println "任务分组:${group}"
            println "任务描述:${description}"
        }
    }

    task g2(dependsOn: g1){
        doLast{
            println "this is g2"
        }
    }

gradle -q dep2 执行任务,执行结果如下

任务分组:baidu
任务描述:baidu app
this is g2

Gradle命令行

获取所有任务信息

gradle -q tasks

排除任务

gradle -q g2 -x g1
虽然g2依赖于g1 但是仅仅会执行g2任务

获取任务帮助信息

gradle -q help --task g1
执行结果如下

Detailed task information for g1

Path
     :module-gradle:g1

Type
     Task (org.gradle.api.Task)

Description
     baidu app

Group
     baidu
多个任务同时调用

每个任务只会执行一次,无论是在命令行中指定任务还是任务依赖
gradle -q g1 g2
执行结果如下

任务分组:baidu
任务描述:baidu app
this is g2

相关文章

网友评论

      本文标题:Gradle中任务的操作

      本文链接:https://www.haomeiwen.com/subject/csfwhltx.html