Gradle DSL method not found: 'runProguard()'
2016-01-04 15:48
435 查看
Android studio运行项目时出现问题:
Gradle
DSL method not found: 'runProguard()'
从字面就能看出来,出现这个问题的原因是找不到runProguard()这个方法了(调用这个方法的地方在每个Module对应的build.gradle文件中)。
这是因为,当Android Studio升级时,也自动的将项目下的build.gradle文件(不是Module对应的build.gradle!)下的内容修改成了:
显然,最简单的解决方法是将gradle的版本改回去,此方法可能的确有效。
但是,这种做法显然不是最好的方法。查阅官方文档之后(http://tools.android.com/tech-docs/new-build-system)之后发现,在新版本的gradle中,runProguard这个方法已经废弃了,并且改为新的方法了:
因此,正确的解决方法不是修改gradle的版本号,而是将项目中每个Module对应的build.gradle文件中的runProguard方法名改为
问题完美解决。
Gradle
DSL method not found: 'runProguard()'
从字面就能看出来,出现这个问题的原因是找不到runProguard()这个方法了(调用这个方法的地方在每个Module对应的build.gradle文件中)。
这是因为,当Android Studio升级时,也自动的将项目下的build.gradle文件(不是Module对应的build.gradle!)下的内容修改成了:
dependencies { classpath 'com.android.tools.build:gradle:1.0.0-rc4' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files }而升级之前是这样的(以我的电脑为例,应该是类似的):
dependencies { classpath 'com.android.tools.build:gradle:0.12.2' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files }
显然,最简单的解决方法是将gradle的版本改回去,此方法可能的确有效。
但是,这种做法显然不是最好的方法。查阅官方文档之后(http://tools.android.com/tech-docs/new-build-system)之后发现,在新版本的gradle中,runProguard这个方法已经废弃了,并且改为新的方法了:
minifyEnabled.
因此,正确的解决方法不是修改gradle的版本号,而是将项目中每个Module对应的build.gradle文件中的runProguard方法名改为
minifyEnabled,即:
buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } }
问题完美解决。
相关文章推荐
- Caffe傻瓜系列(1):数据层及参数
- cassandra 服务启动流程
- iOS第一次启动,动态引导页面的思路及代码
- urllib2 详解
- Objective-C类方法中使用self注意事项
- 【指导】iOS代码静态检查 -- oclint (+ xcodebuild + xcpretty + jenkins)
- 【C++拾遗】 C++虚函数实现原理
- 多线程
- 简单的数据查询
- UIStackView教程:了解Stack View
- 将本地图片 显示到浏览器上
- Google Protocol Buffer 的使用和原理
- AndroidAnnotations配置
- android学习之ChartEngine详细
- linux mysql大小写敏感问题
- Unity Shader 学习笔记(十一) 混合纹理Shader实例
- 全站HTTPS来了!有何优势、与HTTP有何不同?
- 微服务开发的12项要素
- 在windows系统上搭建nfs server
- delphi BLE 学习