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

98

При попытке запустить новый проект 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, этой проблемы нет.

Джош Лэрд
источник

Ответы:

198

В моем build.gradle меняется

ext.kotlin_version = '1.1.2-3'

к

ext.kotlin_version = '1.1.2-4'

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

Вы можете найти самую последнюю версию здесь .

Джош Лэрд
источник
3
Решено здесь! Но плагин в версии 1.1.2-3, а не в версии 1.1.2-4, что я могу сделать?
Педро Пауло Аморим
5
@PedroPauloAmorim Я не уверен, что это правильный ответ, но когда я зашел в «Настройки»> «Плагины», удалил плагин Kotlin и перезапустил его, он загрузился с установленной версией 1.1.2-4. Странно, но, возможно, шаг в правильном направлении.
Макс
1
Да, просто удалите плагин и вуаля
Педро Пауло Аморим
2
Я могу подтвердить, что это работает над Android Studio 3.0 Canary 3, проголосовано за
Мохаммед Эльрашид
Странно, это случилось со мной сейчас, когда я только что загрузил Android studio 3. К счастью, я оказался здесь, чтобы найти решение
JustADev
2

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

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

 classpath 'com.jakewharton:butterknife-gradle-plugin:8.4.0'  
Просто любопытно
источник
2

Для 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'

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

Акс4125
источник
1

Это известная проблема в 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/

Ренан Феррари
источник
1

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

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

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

Сумерки
источник
0

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

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

Maragues
источник