Невозможно применить плагин: dexguard в файле build.gradle

У меня ошибка ниже, когда я добавляю apply plugin: 'dexguard' в файл build.gradle моего основного модуля.

Error:Unable to load class 'com.android.build.gradle.BasePlugin$PostCompilationData'. Possible causes for this unexpected error include:

  • Вы используете версию JDK "java version" 1.7.0_67 ". Некоторые версии JDK 1.7 (например, 1.7.0_10) могут вызывать ошибки загрузки классов в Gradle. Пожалуйста, обновитесь до более новой версии (например, 1.7.0_67). Откройте настройки JDK
  • Кеш зависимостей Gradle может быть поврежден (иногда это происходит после тайм-аута сетевого подключения). Перезагрузите зависимости и синхронизируйте проект (требуется сеть)
  • Состояние процесса сборки Gradle (демона) может быть повреждено. Эту проблему может решить остановка всех демонов Gradle. Остановить процессы сборки Gradle (требуется перезапуск)
  • Ваш проект может использовать сторонний плагин, который несовместим с другими плагинами в проекте или с версией Gradle, запрошенной проектом.
In the case of corrupt Gradle processes, you can also try closing the IDE and then killing all Java processes.

Файл 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', ошибка станет:

Error:(29, 0) Gradle DSL method not found: 'getDefaultDexGuardFile()' Possible causes:

  • В проекте AndroidWorkSpace может использоваться версия Gradle, не содержащая этого метода. Настройки Gradle
  • В файле сборки может отсутствовать плагин Gradle. Применить плагин Gradle

Дополнительно:

  • Я DexGuard v6.1. И файл flatDir dirs в build.gradle - это правильное расположение.
  • Android Studio v 1.3.0 (build 141.2117773)
  • Gradle в каталоге установки Android Studio gradle-2.4

  • person Devrim    schedule 19.08.2015    source источник


    Ответы (1)


    Проблема решена после обновления DexGuard до версии 7.0.18.

    person Devrim    schedule 23.08.2015