Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么gradle clean任务会启动所有其他非默认任务?_Gradle_Android Gradle Plugin - Fatal编程技术网

为什么gradle clean任务会启动所有其他非默认任务?

为什么gradle clean任务会启动所有其他非默认任务?,gradle,android-gradle-plugin,Gradle,Android Gradle Plugin,我已经让gradle安装好并运行了。Mybuild.gradle中定义了两个任务: task setVersion() { println('setVersion') //... } task setIntegrationEnv() { println('setIntegrationEnv') //... } 当我跑的时候 ./gradlew clean gradle同时运行任务setVersion和setIntegrationEnv,然后为该项目中的所有我

我已经让gradle安装好并运行了。My
build.gradle
中定义了两个任务:

task setVersion() {
    println('setVersion')
    //...
}

task setIntegrationEnv() {
    println('setIntegrationEnv')
    //...
}
当我跑的时候

./gradlew clean
gradle同时运行任务
setVersion
setIntegrationEnv
,然后为该项目中的所有我的模块(
app
cloud\u模块
)干净运行,输出:

Relying on packaging to define the extension of the main artifact has been deprecated and is scheduled to be removed in Gradle 2.0
setVersion
setIntegrationEnv
:cloud_module:clean
:app:clean

BUILD SUCCESSFUL

Total time: 14.18 secs

为什么会发生这种情况,在哪里定义了这种行为?

能否提供完整的
build.gradle
脚本?我会更容易帮助你。您可能把gradle构建阶段和配置阶段弄错了——这是一个常见的话题

一般规则是,您希望在构建阶段运行的代码应作为操作添加:

或全部:

task someTask {
   println 'configuration'

   doLast {
      println 'runtime'
   }
}

可以找到其他信息,并且。

我建议始终使用
doLast
而不是
Marian Paździoch:这就是你要找的吗?是的-我标记为与你提出的问题重复。如果这是你要找的,请接受答案。可能是
task someTask  {
   println 'configuration
}
task someTask {
   println 'configuration'

   doLast {
      println 'runtime'
   }
}