如何从另一个任务调用android flavor gradle任务

nem*_*zis 2 android gradle

在我的项目中,我有3种产品口味(开发,生产和测试).我最近从Ant切换过,所以也许我仍然有Ant心态,但这正是我想要实现的:

创建自定义任务(让我们称之为"buildAndUpload"),它将调用assembleDevRelease,然后调用另一个任务.

这是我尝试过的:

task myCustomTask {
  println "My Custom Task"
}

task buildAndUpload {
  tasks.assembleDevRelease.execute()
  tasks.myCustomTask.execute()
}
Run Code Online (Sandbox Code Playgroud)

当我调用buildAndUpload任务(gradlew buildAndUpload)时,我得到以下输出:

:buildAndUpload 
"My Custom Task"  
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,不会调用assembleDevRelease任务.我知道我可以使用doLast闭包,但我真的想让myCustomTask调用包含在单独的任务中.

Pet*_*ser 5

任务不能调用另一个任务,但它可以依赖于它.例如:

task myCustomTask {
    dependsOn "assembleDevRelease"
    doLast {
        println "executing..."
    }
}
Run Code Online (Sandbox Code Playgroud)