zoukankan      html  css  js  c++  java
  • Android Studio:Gradle DSL method not found: 'runProguard()'

    Android Studio发布了新的1.0版,更新之后却发现原来在0.8下面正常的项目编译失败了,从报错上来看是卡在gradle上面。

    Gradle DSL method not found: 'runProguard()'

    找不到 runProguard() 这个方法

    最终的原因很让人无语,原来gradle的工程师跟谷歌负责安卓这一块的是一个尿性!!根本就不管上下版本的开发兼容性!!

    Android Studio 1.0 默认采用了新版本的gradle,升级时,也会自动的将项目下的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
    
    }


    而升级之前用的gradle版本应该是0.12.2,所以之前应该是这样的:

    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在的话,把版本号改回去就能跟原来一样正常编译了,但是这种做法显然不是最好的方法。

    这个问题的最终解是,在新版本的gradle中,runProguard() 这个方法已经废弃并且改为了新的方法: minifyEnabled()。因此,正确的解决方法不是修改gradle的版本号,而是将项目中每个Module对应的build.gradle文件中的runProguard方法名改为 minifyEnabled(),即:  

        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
  • 相关阅读:
    FPGrowth 实现
    数据库事务的4个特性ACID
    redis简介(keeper实时报表的基本部分)
    HADOOP中的CRC数据校验文件
    潜在语义分析
    AdaBoost 算法
    cocosBuilder生成cbbi文件,绑定到cocos2d-x
    C++继承模型
    Android应用经典主界面框架之中的一个:仿QQ (使用Fragment, 附源代码)
    从今天開始学习iOS开发(iOS 7版)--实现一款App之Foundation框架的使用
  • 原文地址:https://www.cnblogs.com/jcf94/p/gradle.html
Copyright © 2011-2022 走看看