buildTypes不能应用于groovy.lang.Closure

Jim*_*tek 241 android-studio android-gradle-plugin

我在项目gradle文件中收到此警告:

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

我的buildTypes部分是:

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

我目前正在使用Android Studio 1.1.0,compileSdkVersion 22,buildToolsVersion 22.0.0和targetSdkVersion 22.我尝试退回到21但仍然收到警告.

导致此警告的原因是什么?

Pet*_*ter 471

对我来说,应用上述解决方案并没有解决问题.相反,我必须转到Android Studio中的设置并选择"使用gradle包装器":

在Android Studio中选择: File\Settings\Build,Execution,Deployment\Build tools\Gradle

(Mac用户:Android Studio\Preferences ...\Build,Execution,Deployment\Build tools\Gradle)

标记:使用默认gradle包装器(默认)

这删除了构建文件中的所有"无法应用于"(groovy.lang.Closure')警告.

  • Android Studio愚蠢的东西,当我通过构建目标22和buildToolsVersion 22.0.1制作时,它开始向我显示警告....对于我来说'使用默认gradle包装'已被标记为默认(AS 2.0 Beta)...我只是剪切我的代码块并粘贴在同一个地方(没有代码更改,没有配置更改)....警告已被删除! (11认同)
  • 这是正确答案,问题发生在我在Windows上打开项目然后在Linux上(通过Dropbox)它改变了gradle分发的位置,所以最好使用默认的gradle包装器. (2认同)

小智 127

我遇到过同样的问题.移动buildTypes作为android部分中的最后一个条目为我工作.

android {
    ...
    buildTypes {
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 这对我来说似乎也有用,但随后我解除了这些变化,并将该块复制/粘贴在同一个地方,警告也消失了.然后我试图将其全部撤消并关闭并重新打开项目以复制警告,但它已经消失了.我认为这只是其中一种警告. (4认同)
  • 奇怪的是它的位置应该有所作为,但显然确实如此. (2认同)

Luc*_*llà 76

1将"buildTypes"剪切并粘贴到"android"部分中的相同位置

2重新同步项目


Iva*_*n V 16

要解决此问题,请在Android Studio中转到文件 - >设置.在设置中选择Build,Execution,Deployment - > Build Tools - > Gradle 并选择"Use default gradle wrapper(recommended)"选项.

重建后,你的build.gradle将完全没问题.

  • 它与@Peter 的回答有何不同。 (3认同)

Ati*_*ukh 13

如果以上选项均无效,请执行以下操作

  1. Project在"Project Explorer" 中将项目更改为透视图.
  2. 删除.gradlebuild文件夹.
  3. 单击文件 - >使高速缓存无效/重新启动... - > 无效并重新启动
  4. 现在它的工作,快乐的编码.


小智 7

我设法解决了我的问题,只需执行此操作:单击"文件",然后选择"无效缓存/重新启动"


小智 6

解决此Gradle问题的最简单方法是重新创建项目,让Android Studio重新配置Gradle.

只需选择"打开现有的Android Studio项目"并选择项目文件夹即可.

更多细节在这里.