【问题标题】:Android Studio - unsupported Gradle DSL method found: 'getProguard()Android Studio - 发现不支持的 Gradle DSL 方法:'getProguard()
【发布时间】:2014-09-21 13:16:42
【问题描述】:

我在 Mac 上的 Android Studio 0.6.1 上运行现有的 android 项目,但出现此错误: 构建脚本错误,发现不受支持的 Gradle DSL 方法:'getProguard()'!

我尝试升级到最新的 Android Studio,但遇到了同样的问题,我还尝试了以下问题论坛中描述的所有解决方案:https://code.google.com/p/android/issues/detail?id=72419 因为许多其他人似乎也遇到了类似的问题解决。即更新到 SDK 工具 rev 23.0.2,并下载最新的 adt 包。

proguard 文件夹实际上也出现在 sdk > Tools 中,因此缺少 proguard 实际上不是问题。

这里是根 build.gradle 文件

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.11.+'
    }
}

以及主模块中的build.gradle:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'de.felixschulze.gradle:gradle-hockeyapp-plugin:1.1+'
    }
}

apply plugin: 'android'
apply plugin: 'hockeyApp'

configurations {
    apt
}

dependencies {
   compile 'com.android.support:support-v4:19.0.+'

    FileTree tree = fileTree(dir: 'libs', include: '*.jar');
    tree.exclude 'android-support-v4.jar'
    compile tree;

    apt fileTree(dir: 'compile-libs', include: '*.jar')

    compile project(':thirdparty:google-play-services_lib')
    compile project(':thirdparty:DaoCore')
    compile project(':thirdparty:SlidingMenu-master:library')
    compile project(':thirdparty:jump.android:Jump')
    compile project(':thirdparty:drag-sort-listview')
    compile project(':thirdparty:AndroidHorizontalListView')
}

android {
    compileSdkVersion 19
    buildToolsVersion "19.0.0"

    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src-gen','src','.apt_generated']
            resources.srcDirs = ['src-gen','src','.apt_generated']
            aidl.srcDirs = ['src-gen','src','.apt_generated']
            renderscript.srcDirs = ['src-gen','src','.apt_generated']
            res.srcDirs = ['res']
            assets.srcDirs = ['assets']
        }

        instrumentTest.setRoot('tests')

        debug.setRoot('build-types/debug')
        release.setRoot('build-types/release')
    }

    packagingOptions {
        exclude 'META-INF/LICENSE.txt'
    }   

    signingConfigs {
        releaseSigning {

        storeFile file('***')          
        storePassword ***
        keyAlias ***
        keyPassword ***
        }
    }

    buildTypes {
        release {
            signingConfig signingConfigs.releaseSigning
        }
    }

    hockeyapp {
        apiToken = "***"
        releaseType = 0
        notify = 0
        status = 2
        notesType = 1

        notes = "This is an automatic upload"
        symbolsDirectory = file("build/symbols/")
        mappingFileNameRegex = "R.txt"
    }
}

android.applicationVariants.all { variant ->
    ext.aptOutput = file(".apt_generated")
    ext.aptOutput.deleteDir()
    ext.aptOutput.mkdirs()

    variant.javaCompile.options.compilerArgs += [
        '-processorpath', configurations.apt.asPath,
        '-AandroidManifestFile=' + variant.processResources.manifestFile,
        '-s', ext.aptOutput
    ]
}

// clean generated files
task clean(overwrite:true) {
    delete fileTree(dir: ".apt_generated")  
}

这里的另一位开发人员已经能够在他的 Windows 8 桌面上使用相同版本的 Android Studio 和 Gradle 启动项目并正常运行,所以我认为这与项目本身没有任何关系。

【问题讨论】:

    标签: android gradle android-studio proguard


    【解决方案1】:

    这是因为 HockeyApp 插件 v1.1 与 Android Gradle 插件 v0.11 不兼容。根据 HockeyApp (https://github.com/x2on/gradle-hockeyapp-plugin/releases) 的发行说明,您应该使用 2.1。

    【讨论】:

      猜你喜欢
      • 2014-09-03
      • 1970-01-01
      • 1970-01-01
      • 2014-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多