Android Studio更新后:未找到Gradle DSL方法:' runProguard()'

时间:2014-12-07 14:39:01

标签: android android-gradle

我刚刚更新了我的Android Studio,现在我的项目已经不再构建了。我收到以下错误:

Error:(16, 0) Gradle DSL method not found: 'runProguard()'
Possible causes:<ul><li>The project 'App' may be using a version of Gradle that does not contain the  method.
<a href="openGradleSettings">Gradle settings</a></li><li>The build file may be missing a Gradle plugin.
<a href="apply.gradle.plugin">Apply Gradle plugin</a></li>

我没有改变任何东西,在更新之前一切正常。这是我的build.gradle文件:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 21
    buildToolsVersion "20.0.0"

    defaultConfig {
        applicationId "com.ochs.pipette"
        minSdkVersion 10
        targetSdkVersion 21
        versionCode 8
        versionName "1.6"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile 'com.android.support:appcompat-v7:21.0.0'
    compile 'it.sephiroth.android.library.imagezoom:library:1.0.4'
    compile 'com.android.support:palette-v7:21.0.+'
}

这是另一个:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.0.0-rc2'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

我不知道如何解决问题,任何人都可以帮助我吗?

3 个答案:

答案 0 :(得分:68)

runProguard已重命名为minifyEnabled。请参阅the changelog here进行确认 - Android Gradle插件的版本0.14.0(2014/10/31)进行了交换。

Screenshot showing change location in IDE

答案 1 :(得分:34)

enter image description here正如@stkent所说,runProguard已在Gradle版本0.14.0(2014/10/31)中重命名为minifyEnabled

要解决此问题,您需要在项目的 build.gradle 文件中将runProguard更改为minifyEnabled。例如,

buildTypes {
    release {
        runProguard false // Does not exist anymore...
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
    }
}

将被

取代
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
    }
}

您可以看到其他问题here,但这对我有用。

答案 2 :(得分:1)

runProguard 已在Gradle版本0.14.0(2014/10/31)中重命名为 minifyEnabled

要解决此问题,您需要在项目的 build.gradle 文件中将runProguard更改为minifyEnabled。

enter image description here