无法在build.gradle文件中应用插件:'dexguard'

时间:2015-08-19 11:55:38

标签: android gradle android-gradle proguard dexguard

我将apply plugin: 'dexguard'添加到主模块的 build.gradle 文件中时出现以下错误。

  

错误:无法加载课程   'com.android.build.gradle.BasePlugin $ PostCompilationData'。可能   导致此意外错误的原因包括:

  • 您正在使用JDK   版本'java版本“1.7.0_67”'。某些版本的JDK 1.7(例如   1.7.0_10)可能会导致Gradle中的类加载错误。请更新到更新版本(例如1.7.0_67)。打开   JDK设置
  • Gradle的依赖性缓存可能已损坏   (这有时会在网络连接超时后发生。)重新下载依赖项并同步项目(需要   
  • Gradle构建过程(守护进程)的状态可以   腐败。停止所有Gradle守护进程可以解决此问题。停止Gradle构建过程(需要   重启)
  • 您的项目可能正在使用第三方插件   这与项目中的其他插件或者不兼容   该项目请求的Gradle版本。
如果是   损坏Gradle进程,您也可以尝试关闭IDE然后   杀死所有Java进程。

我的项目的 build.gradle 文件:

buildscript {
    repositories {
        flatDir dirs: 'C:/Users/devrimtu/Documents/Programs/DexGuard/DexGuard6.1/lib'
        jcenter()
    }
    dependencies {
        classpath ':dexguard'
        classpath 'com.android.tools.build:gradle:1.2.3'
    }
}

我的主模块的 build.gradle 文件:

apply plugin: 'com.android.application'
apply plugin: 'dexguard'

android {
 ..
    buildTypes {
        debug {
            proguardFile getDefaultDexGuardFile('dexguard-debug.pro')
            proguardFile 'dexguard-project.txt'
            proguardFile 'proguard-project.txt'
        }
        release {
            proguardFile getDefaultDexGuardFile('dexguard-release.pro')
            proguardFile 'dexguard-project.txt'
            proguardFile 'proguard-project.txt'
        }
    }
}

注意:如果我删除apply plugin: 'dexguard'行,则错误变为:

  

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

  • “AndroidWorkSpace”项目可能正在使用   Gradle的一个版本,不包含该方法。 Gradle设置
  • 构建文件   可能缺少Gradle插件。应用   Gradle插件

附加功能:

  • DexGuard v6.1。并且flatDir dirs build.gradle文件位于正确的位置。
  • Android Studio v 1.3.0 (build 141.2117773)
  • Android Studio安装目录下的Gradle gradle-2.4
  • 1 个答案:

    答案 0 :(得分:0)

    将DexGuard更新为版本7.0.18后问题得以解决。