我在我的项目gradle文件中得到这个警告:

警告:(16日5)'buildTypes'不能应用于'(groovy.lang。关闭< com.android.build.gradle.internal.dsl.BuildType >)

我的buildTypes部分是:

    buildTypes {
        debug {
            debuggable true
        }
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt'
        }
    }

我目前使用Android Studio 1.1.0, compileSdkVersion 22, buildToolsVersion 22.0.0和targetSdkVersion 22。我试着退到21,但还是收到了警告。

是什么导致这个警告&如何修复?


当前回答

在我的例子中,我的buildTypes部分在我的productFlavors部分之上。互换他们的位置可以消除警告:

之前:

buildTypes {

        debug {
            minifyEnabled false
            shrinkResources false
            ...//etc
        }
 }

 productFlavors {
    demo {
        ...//etc
    }
 }

后:

 productFlavors {
    demo {
        ...//etc
    }
 }    

 buildTypes {

        debug {
            minifyEnabled false
            shrinkResources false
            ...//etc
        }
 }

我使用Android Studio 2.1.2,在我的Android部分顶部配置如下:

android {
    compileSdkVersion 24
    buildToolsVersion "23.0.3"

    defaultConfig {
        applicationId "com.xyz.abc"
        minSdkVersion 14
        targetSdkVersion 24
        //..etc

其他回答

当您将项目导入到您的环境中,而Gradle插件安装在与原始位置不同的位置时,问题就出现了。你只需要指出你的Gradle安装在哪里。

在彼此之间移动buildTypes或defaultConfig或任何东西并不是一个完整的解决方案

在gradle-wrapper中将distributionUrl=https://services.gradle.org/distributions/gradle-2.1-bin.zip更改为gradle-2.1-all.zip。物业为我解决了问题。

我也有同样的问题。移动buildTypes作为android部分的最后一个条目对我来说很有效。

android {
    ...
    buildTypes {
    }
}

我设法通过简单地这样做来解决我的问题: 点击“文件”,然后选择“无效缓存/重新启动”

在我的例子中,我的buildTypes部分在我的productFlavors部分之上。互换他们的位置可以消除警告:

之前:

buildTypes {

        debug {
            minifyEnabled false
            shrinkResources false
            ...//etc
        }
 }

 productFlavors {
    demo {
        ...//etc
    }
 }

后:

 productFlavors {
    demo {
        ...//etc
    }
 }    

 buildTypes {

        debug {
            minifyEnabled false
            shrinkResources false
            ...//etc
        }
 }

我使用Android Studio 2.1.2,在我的Android部分顶部配置如下:

android {
    compileSdkVersion 24
    buildToolsVersion "23.0.3"

    defaultConfig {
        applicationId "com.xyz.abc"
        minSdkVersion 14
        targetSdkVersion 24
        //..etc