其他分享
首页 > 其他分享> > Android gradle:所有buildTypes都在同一时间执行

Android gradle:所有buildTypes都在同一时间执行

作者:互联网

我有一个android gradle项目,并且我试图为它配置buildTypes.这是我的build.gradle的一部分:

android {

...

    buildTypes {
        debug {
            println("inside debug...")
        }    
        release {
            println("inside release...")
        }
    }

...
}

当从终端运行assembleDebug任务时,输出为:

inside debug...
inside release...

为什么要打印释放块?当我执行assembleDebug任务时只打印调试块,而当执行assembleRelease任务时只打印释放块,该怎么办?

我对android和gradle都是新手,所以任何帮助都会很棒.

解决方法:

简单的答案是:它们不是.

Gradle(这是一种简化)分为两个阶段工作:配置和执行.在配置阶段,将评估整个脚本-这就是为什么您添加的println语句确实出现在输出中的原因.

要验证发布和调试任务是否都运行,请添加以下代码:

assembleDebug << {
   println 'debug run'
}

assembleRelease << {
   println 'release run'
}

与<<添加了一个动作,它将在任务运行时执行.操作在执行阶段运行.

标签:build-gradle,gradle,android,android-gradle-plugin
来源: https://codeday.me/bug/20191119/2035845.html