android studio中的gradle错误

时间:2016-05-17 13:38:07

标签: android-studio android-gradle build.gradle google-glass android-studio-2.1

我正在尝试构建项目并在我的谷歌眼镜中运行它但是当我尝试构建它时显示

错误:(20,0)未找到Gradle DSL方法:'runProguard()' 可能的原因:

  • 项目'gdk-stopwatch-sample'可能正在使用不包含该方法的Gradle版本。 Gradle设置
  • 构建文件可能缺少Gradle插件。 申请Gradle插件
  • 但我已经安装了最新的gradle插件,即2.13,将build.gradle中的类路径更改为'com.android.tools.build:gradle:2.1.3',将gradle-wrapper属性更改为(distributionUrl = https://services.gradle.org/distributions/gradle-2.13-all.zip),删除了用户中的.gradle文件,但它一再出现,并且在我标记为脱机工作的设置中,服务目录路径仍然出现,但

    更新了清单

    <?xml version="1.0" encoding="utf-8"?>
    

    <uses-sdk android:minSdkVersion="19" android:targetSdkVersion="19" />
    
    <application>
        <uses-library android:name="android.test.runner" />
    </application>
    
    <instrumentation android:name="android.test.InstrumentationTestRunner"
                     android:targetPackage="com.google.android.glass.sample.stopwatch"
                     android:handleProfiling="false"
                     android:functionalTest="false"
                     android:label="Tests for com.google.android.glass.sample.stopwatch"/>
    

    3 个答案:

    答案 0 :(得分:4)

    这是因为Android 2.1.3的gradle插件不存在
    不要将gradle版本与gradle插件混淆。

    使用

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

    关于runProguard更改您的脚本:

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

    答案 1 :(得分:0)

    使用minifyEnabled()代替runProguard()

    所以代码看起来像

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

    答案 2 :(得分:0)

    问题错误,gradle插件没有得到更新解决 - 如果你收到此错误,你应该将插件版本更新为2.1.2或2.3.1(注意它是2.1.2而不是2.12)。以下是解决我的错误的示例项目级build.gradle -

    // 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:2.3.1'
        }
    }
    allprojects {
        repositories {
            jcenter()
        }
    }