错误:(47,0)无法获得未知属性' IS_CI_BUILD'对于com.android.build.gradle.AppExtension类型的对象

时间:2017-08-21 11:01:25

标签: android android-studio gradle android-gradle

执行rm -rf ~/.gradlerm -rf ~/.gradle/wrapper/dists(为了防止我的应用程序应用某些第三方库的缓存版本所需),我无法再构建我的应用程序,如行

buildTypes.each {
    it.buildConfigField 'boolean', 'IS_CI_BUILD', IS_CI_BUILD
}

导致此错误:

Error:(47, 0) Could not get unknown property 'IS_CI_BUILD' for object of type com.android.build.gradle.AppExtension.

可能是什么原因?从this answer我猜测我的IS_CI_BUILD属性应该是布尔值,但每当我将其更改为truefalse并尝试运行应用程序时,会弹出一个编辑配置对话框,其中我我不确定该怎么做。

1 个答案:

答案 0 :(得分:0)

嗯,事实证明,现在我有问题的build.gradle行需要看起来像这样:

 buildTypes.each {
        it.buildConfigField 'boolean', 'IS_CI_BUILD', 'Boolean.parseBoolean("true")'
    }

我刚刚打开了我生成的BuildConfig类,并注意到gradle有两种方法生成这些静态变量,或者像这样的文字: public static final boolean fabricEnabled = true; 或者像这样:public static final boolean DEBUG = Boolean.parseBoolean("true");(更多信息here)。

我的IS_CI_BUILD甚至不存在,所以我认为AS由于某种原因无法成功生成到BuildConfig类中并决定尝试第二种方法。它奏效了!