Я только начал использовать Android Studio 3.0.0, но каждый раз, когда я пытаюсь собрать свой проект, я получаю такую ошибку:
Error:Circular dependency between the following tasks:
:app:compileDebugKotlin
+--- :app:dataBindingExportBuildInfoDebug
| \--- :app:compileDebugKotlin (*)
\--- :app:kaptDebugKotlin
\--- :app:dataBindingExportBuildInfoDebug (*)
(*) - details omitted (listed previously)
Я использую
kapt "com.android.databinding:compiler:2.2.0"
Раньше я использовал
androidProcessor "com.android.databinding:compiler:2.2.0"
И он работал нормально ... Что я делаю не так ??
Спасибо!
android
android-studio
kotlin
android-databinding
android-studio-3.0
Леандро Борхес Феррейра
источник
источник
Ответы:
Кажется, что вам нужно 3 записи gradle в приложении .gradle на уровне модуля, чтобы добавить привязку данных
apply plugin: 'kotlin-kapt'
android { ... dataBinding { enabled = true } }
dependencies { ...... kapt "com.android.databinding:compiler:$compiler_version" }
Обратите внимание, что я сделал версию компилятора переменной в градиенте сборки на уровне проекта, чтобы ею можно было управлять из одного места.
по умолчанию было:
ext.kotlin_version = '1.1.3-2'
Я добавил синтаксис скобок:
источник
UPD: это было исправлено для плагина Android Gradle 3.0.0-alpha3, в корне вашего проекта
build.gradle
измените значениеbuildscript
dependencies
на использованиеНа самом деле это ошибка во взаимодействии плагина Kotlin Gradle 1.1.2-4 с плагином Android Gradle 3.0.0-alpha1, вызванная тем, как заданы входы и выходы задач (и, следовательно, как задачи связаны с отношение зависимости).
Спасибо @VyacheslavGerasimov за создание номера KT-17936 .
В качестве временного решения вы можете попробовать вернуться к плагину Kotlin Gradle 1.1.2-2 и отключить инкрементную компиляцию:
В корне вашего проекта
build.gradle
измените версию плагина Kotlin Gradle:Добавьте
local.properties
в корень проекта следующую строку:Известная проблема заключается в том, что плагин Kotlin Gradle 1.1.2-2 и ниже дает сбой с новейшими версиями AGP, и отключение инкрементной компиляции, похоже, исправляет этот сбой.
источник
local.properties
файл в ваших проектах. Ну, можетlocal.properties
, больше подходит для свойств локальной машины .Для тех, кто все еще ищет подходящее решение, Google уже исправил эту проблему в сборке Android Studio 3.0 Canary 3 .
Пятница, 2 июня 2017 г.
Рабочая конфигурация Gradle:
build.gradle (проект)
build.gradle (модуль)
источник
1.1.2-4
все равно не работает. Еще нужно использовать,1.1.2-2
а также добавить kapt "com.android.databinding: compiler: 3.0.0-alpha3" к вашему build.gradle (модулю), иначе вы получите Unresolved reference: databinding.Я недавно написал блог для привязки данных Android с Kotlin здесь
Использовать путь к классам
Зависимость
для более подробной информации ознакомьтесь с этим сообщением
источник