我在我的项目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,但还是收到了警告。

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


当前回答

将buildToolsVersion从

android {
    compileSdkVersion 24
    buildToolsVersion "24.0.2" 
.. 
}

to

android {
    compileSdkVersion 24
    buildToolsVersion "24.0.1" 
.. 
}

为我工作。

其他回答

1在“android”部分的相同位置剪切粘贴“buildTypes”

2 Re Sync项目

在我的例子中,我的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

在我更新Android Studio之后,我曾经有过这个警告。

当我进入设置>>构建工具>>Gradle时,我发现本地Gradle路径无效,因为Gradle版本也从2.6更新到2.8。

修正了新的路径和重新同步gradle删除警告。

另一种方法是使用gradlewrapper。

我也有同样的问题。我开始了一个新项目,它可以工作,所以我只是复制了这个构建。gradle文件。在我的例子中,唯一的区别是缺少compileOptions部分。我把它从我的项目中移除,同步gradle,重新插入compileOptions部分,然后再次同步gradle。

手头的问题是,你可能在升级时导入的Android Studio设置仍然指向gradle-2.4或其他版本,而不是Android Studio 1.5的预期。

要解决这个问题,你应该打开设置,然后进入构建,执行,部署>构建工具> Gradle,然后更改本地Gradle分发的主路径或选择默认的Gradle包装器。

应用并重新同步您的项目。