gradle - Gradle DSL method not found: 'runProguard'

  显示原文与译文双语对照的内容

从上一个项目更新后,我得到了一个错误。 我的代码中没有问题,但我的build.gradle 有问题。 如何修复它?

build.gradle 代码:


apply plugin: 'android'

android {
 compileSdkVersion 21
 buildToolsVersion '20.0.0'

 packagingOptions {
 exclude 'META-INF/DEPENDENCIES'
 exclude 'META-INF/LICENSE'
 exclude 'META-INF/LICENSE.txt'
 exclude 'META-INF/license.txt'
 exclude 'META-INF/NOTICE'
 exclude 'META-INF/NOTICE.txt'
 exclude 'META-INF/notice.txt'
 exclude 'META-INF/ASL2.0'
 }

 defaultConfig {
 applicationId 'com.xxx.axxx'
 minSdkVersion 14
 targetSdkVersion 19
 versionCode 6
 versionName '1.0'
 }
 buildTypes {
 release {
 runProguard false
 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
 }
 }
 productFlavors {
 }
}

dependencies {
 compile fileTree(dir: 'libs', include: ['*.jar'])
 compile 'com.android.support:appcompat-v7:19.+'
 compile files('libs/commons-codec-1.8.jar')
 compile files('libs/asmack-android-8-4.0.4.jar')
 compile 'com.android.support:support-v4:21.0.0'
 compile 'com.google.code.gson:gson:2.2.4'
 compile 'com.jakewharton:butterknife:5.1.1'
}

Gradle同步消息输出:


Error:(27, 0) Gradle DSL method not found: 'runProguard()'
**Possible causes:
The project 'Atomic4Mobile' may be using a version of Gradle that does not contain the method.
**Gradle settings**
The build file may be missing a Gradle plugin.
**Apply Gradle plugin**

时间:

使用'minifyEnabled'而不是'runProguard'工作正常。

Previous code :


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

Current code :


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

如果要迁移到 1.0.0,你需要更改以下属性。

在项目文件的build.gradle 中,你需要替换 minifyEnabled 。

因此你的新构建类型应该是


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

同时确保gradle版本是 1.0.0


classpath 'com.android.tools.build:gradle:1.0.0'

在 build.gradle 文件中。

这应该解决这个问题。

源:http://tools.android.com/tech-docs/new-build-system/migrating-to-1-0-0

...