解决Gradle DSL method not found: ‘android()’和Gradle DSL method not found: 'runProguard()'

解决Gradle DSL method not found: ‘android()’

最近导入as的项目出了这样的问题

这里写图片描述

这个问题困扰了我很长时间,好吧,搜了半天全都是runProguard的,最后在stackoverflow上搜到解决办法了:
http://stackoverflow.com/questions/27735646/android-studio-gradle-dsl-method-not-found-android-error17-0

解决方法

删掉最外层的build.gradle中的

android {
    compileSdkVersion 19
    buildToolsVersion '21.1.1'
}

然后重新刷新就ok了

这里写图片描述


Android:解决Gradle DSL method not found: 'runProguard()' 问题

Android Studio升级至最新版(1.0 RC 4)之后,运行项目时出现问题:

Gradle DSL method not found: 'runProguard()'

从字面就能看出来,出现这个问题的原因是找不到runProguard()这个方法了(调用这个方法的地方在每个Module对应的build.gradle文件中)。

这是因为,当Android Studio升级时,也自动的将项目下的build.gradle文件(不是Module对应的build.gradle!)下的内容修改成了:

[plain]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. dependencies {  
  2.         classpath 'com.android.tools.build:gradle:1.0.0-rc4'  
  3.   
  4.         // NOTE: Do not place your application dependencies here; they belong  
  5.         // in the individual module build.gradle files  
  6.     }  
而升级之前是这样的(以我的电脑为例,应该是类似的):

[plain]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. dependencies {  
  2.         classpath 'com.android.tools.build:gradle:0.12.2'  
  3.   
  4.         // NOTE: Do not place your application dependencies here; they belong  
  5.         // in the individual module build.gradle files  
  6.     }  

显然,最简单的解决方法是将gradle的版本改回去,此方法可能的确有效。

但是,这种做法显然不是最好的方法。查阅官方文档之后(http://tools.android.com/tech-docs/new-build-system)之后发现,在新版本的gradle中,runProguard这个方法已经废弃了,并且改为新的方法了:minifyEnabled. 因此,正确的解决方法不是修改gradle的版本号,而是将项目中每个Module对应的build.gradle文件中的runProguard方法名改为minifyEnabled,即:

[plain]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. buildTypes {  
  2.         release {  
  3.             minifyEnabled false  
  4.             proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'  
  5.         }  
  6.     }  

问题完美解决。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值