Android Studio 3.0 - Не удается найти метод "com.android.build.gradle.internal.variant.BaseVariantData.getOutputs() Ljava/util/List '

Попытка запустить новый проект Kotlin с Android Studio 3.0 Canary 1 отображает эту ошибку. Полная трассировка:

Ошибка: невозможно найти метод 'Com.android.build.gradle.internal.variant.BaseVariantData.getOutputs() Ljava/Util/Список;'. Возможные причины этой непредвиденной ошибки:

  • Gradle 's кэш зависимостей может быть поврежден (это иногда происходит после сети время ожидания соединения.) Зависимости перезагрузки и проект синхронизации (требуется сеть).
  • Состояние Gradleпроцесс сборки (демон) может быть поврежден. Остановка всех демонов Gradle может решите эту проблему. Остановить Gradle построить процессов (требуется перезагрузка)
  • В вашем проекте может использоваться сторонний плагин, который несовместим с другими плагинами в проекта или версии Gradle, запрошенной проекта.
В случае коррумпированных процессов Gradle вы можете также попытайтесь закрыть среду IDE и затем уничтожить все процессы Java.

Я попробовал первые два варианта, а сторонние плагины остались по умолчанию.

gradle -wrapper.properties

#Thu May 18 08:36:52 BST 2017
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.0-milestone-1-all.zip

build.gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    ext.kotlin_version = '1.1.2-3'
    repositories {
        maven { url 'https://maven.google.com' }
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.0-alpha1'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

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

task clean(type: Delete) {
    delete rootProject.buildDir
}

Я не касался ни одного из этих значений самостоятельно, они оставлены как значение по умолчанию. Создание нового проекта, отличного от Kotlin, не имеет этой проблемы.

Ответ 1

В моем build.gradle изменении

ext.kotlin_version = '1.1.2-3'

to

ext.kotlin_version = '1.1.2-4'

исправлено это.

(по состоянию на ноябрь 2017 года текущая версия Котлина равна 1,1.60)

Ответ 2

Это сработало для меня

Использование версии 8.4.0

 classpath 'com.jakewharton:butterknife-gradle-plugin:8.4.0'  

Ответ 3

Для Java

Просто удалите

classpath 'me.tatarka:gradle-retrolambda:3.7.0'

версия butterknife до 8.4.0

classpath 'com.jakewharton:butterknife-gradle-plugin:8.4.0'

Не забудьте удалить

apply plugin: 'me.tatarka.retrolambda'

из сборки уровня приложения gradle.

Ответ 4

Это известная проблема в Android Studio Preview 3.0:

Если вы видите эту ошибку, возможно, у вас есть уже существующая версия плагина Kotlin, которая несовместима с новым Android-плагином для Gradle, что в Android Studio 3.0. Решение состоит в удалении старого плагина Kotlin.

Откройте файл build.gradle на уровне проекта и найдите ext.kotlin_version. Он должен быть 1,1,2-4 (или выше). Если он показывает более старую версию, вам нужно удалить старый плагин Kotlin, чтобы он не мешал версии, входящей в состав Android Studio 3.0.

В Windows это должно быть расположено в

C:\Users\user_name\AndroidStudio_version\config\plugins\Kotlin\

На Mac, посмотрите

~/Library/Application\ Support/AndroidStudio_version/Kotlin/

Ответ 5

В моем случае проблема была вызвана тем, что мы применяли butterknife- gradle -plugin. Обновление до 8.8.1 не устранило проблему, но, конечно же, ее удаление.

build.gradle принадлежит к приложению, поэтому я даже не знаю, почему мы используем этот плагин (я новичок в проекте)

Ответ 6

Обновите свою версию kotlin до последней версии:

ext.kotlin_version = '1.1.2-4' //currently it the latest version

Затем вы можете столкнуться с некоторыми ошибками, поэтому перед повторной синхронизацией убедитесь, что ваш buildToolsVersion равен "26.0.2" или выше.