Не удалось загрузить класс com.android.builder.Version после обновления до Android Studio 3.1.

Я обновился до Android Studio 3.1 на канале Canary и больше не могу создавать свой проект, выводится эта ошибка:

Не удалось загрузить класс com.android.builder.Version. Возможные причины этой неожиданной ошибки включают в себя:

  • Кэш зависимостей Gradle может быть поврежден (иногда это происходит после истечения времени ожидания сетевого подключения). Повторно загрузите зависимости и проект синхронизации (требуется сеть)
  • Состояние процесса сборки Gradle (демона) может быть повреждено. Остановка всех демонов Gradle может решить эту проблему. Остановить процессы сборки Gradle (требуется перезагрузка)

В вашем проекте может использоваться сторонний плагин, который несовместим с другими плагинами в проекте или версией Gradle, запрошенной проектом. В случае поврежденных процессов Gradle вы также можете попробовать закрыть IDE, а затем убить все процессы Java.

Я уже пробовал оба этих решения, а также пытался удалить весь каталог ~/.gradle/caches, но ошибка сохраняется.

В поисках подобной ошибки я обнаружил, что в старой версии Android Studio возникают проблемы с предлагаемым решением для обновления версии инструментов Android.

Я думаю, что у меня уже есть последний:

    classpath 'com.android.tools.build:gradle:3.1.0-alpha01'

EDIT (30 октября 2017 г.):

Ответы показывают, что у кого-то есть проблема, а у кого-то нет. Как указано в комментариях к этому вопросу, это может быть вызвано несовместимым плагином, поэтому я перечисляю здесь плагины, используемые в моем проекте:

buildscript {
    ext.kotlin_version = '1.1.51'
    repositories {
        jcenter()
        google()
//        maven {
//            url 'https://maven.google.com'
//        }
        maven {
            url "https://plugins.gradle.org/m2/"
        }
    }
    dependencies {
        classpath "com.gradle:build-scan-plugin:1.10"
        classpath 'com.getkeepsafe.dexcount:dexcount-gradle-plugin:0.8.1'
        classpath 'com.android.tools.build:gradle:3.1.0-alpha01'
        classpath 'com.google.gms:google-services:3.1.1'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

В настоящее время dexcount не используется из-за некоторых несовместимостей с более новыми версиями плагина для Android.


person Daniele Segato    schedule 27.10.2017    source источник
comment
Да, у вас есть последний плагин Android Gradle, но он несовместим с другими плагинами. Можете ли вы перечислить другие плагины вашего проекта?   -  person CoXier    schedule 27.10.2017
comment
На самом деле это может объяснить, пока у меня есть проблема, а у других нет ... Да, я могу перечислить другие плагины, я отредактирую свой вопрос.   -  person Daniele Segato    schedule 30.10.2017
comment
Это из плагина dexcount, мы работаем над ним здесь: github.com/ KeepSafe/dexcount-gradle-plugin/pull/225.   -  person Jared Burrows    schedule 02.11.2017


Ответы (4)


У меня была такая же проблема, и что у нас общего, так это плагин dexcount. Отключение этой проблемы до тех пор, пока два плагина не будут совместимы. См. отчет об ошибке dexcount.

«обновление до dexcount 0.8.2 устраняет проблему»

person Gabor Peto    schedule 10.11.2017
comment
вы были правы, я забыл обновить эту проблему, я принял ваш ответ и добавил ссылку на ошибку, которую я создал на dexcount. - person Daniele Segato; 28.11.2017
comment
исправлено в dexcount 0.8.2 - person brillenheini; 29.03.2018
comment
Комбинация gradle-4.4 и dexcount 0.8.2 работает у меня в студии Android 3.1.2 - person UzumakiL; 03.09.2018

По-видимому, возврат к предыдущей версии плагина Android Tools работает:

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

Но IDE спрашивает меня, хочу ли я обновиться до 3.1.0-alpha1, поэтому я размышляю, является ли это ошибкой или проблема заключается в чем-то другом.

Я просто оставлю это решение здесь, пока кто-нибудь не предложит другое объяснение.

person Daniele Segato    schedule 27.10.2017
comment
У меня такая же проблема. Я возвращаюсь к версии 3.0.0. - person JeKa; 30.10.2017

Не знаю, почему ваша сборка не работает, но после чистой установки Android Studio 3.1 и с этим параметром все отлично работает при компиляции большого проекта, содержащего несколько библиотек (и смешанных с java, kotlin).

buildscript {
    ext {
        gradle_version = "3.1.0-alpha01"
        kotlin_version = "1.1.51"
    }

    repositories {
        maven {
            url 'https://maven.google.com'
        }
        maven {
            url 'https://oss.sonatype.org/content/repositories/snapshots'
        }
        jcenter()
        google()
    }

    dependencies {
        classpath "com.android.tools.build:gradle:$gradle_version"
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}



allprojects {
    repositories {
        maven {
            url 'https://maven.google.com'
        }
        jcenter()
        google()
    }

    gradle.projectsEvaluated {
        tasks.withType(JavaCompile) {
            options.compilerArgs << "-Xmaxerrs" << "500"
        }
    }

}

и мой градиент на основе приложения.

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'
apply plugin: 'kotlin-android-extensions'

android {
... 
}
person Emanuel S    schedule 27.10.2017

я изменил строку пути к классу в gradle (проект: имя проекта), и проблема исчезла.

путь к классам 'com.android.tools.build: gradle: 3.1.2'

person Ramkesh Yadav    schedule 23.06.2018