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 / List;». Возможные причины этой непредвиденной ошибки:

  • Кэш зависимостей Gradle может быть поврежден (это иногда происходит после таймаута сетевого подключения.) Заново загружать зависимости и проект синхронизации (требуется сеть)
  • Состояние процесса сборки 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, не имеет этой проблемы.

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

ext.kotlin_version = '1.1.2-3'

в

ext.kotlin_version = '1.1.2-4'

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

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

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

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

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

Для Java

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

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

версия для 8.4.0 с 8.4.0 butterknife до 8.4.0

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

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

apply plugin: 'me.tatarka.retrolambda'

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

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

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

Откройте файл build.gradle уровне 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/

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

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

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

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

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