Saya baru saja mulai menggunakan Android Studio 3.0.0, tetapi setiap kali saya mencoba membangun proyek saya, saya mendapatkan kesalahan ini:
Error:Circular dependency between the following tasks:
:app:compileDebugKotlin
+--- :app:dataBindingExportBuildInfoDebug
| \--- :app:compileDebugKotlin (*)
\--- :app:kaptDebugKotlin
\--- :app:dataBindingExportBuildInfoDebug (*)
(*) - details omitted (listed previously)
saya menggunakan
kapt "com.android.databinding:compiler:2.2.0"
Sebelum saya menggunakan
androidProcessor "com.android.databinding:compiler:2.2.0"
Dan itu bekerja dengan baik ... Apa yang saya lakukan salah ??
Terima kasih!
android
android-studio
kotlin
android-databinding
android-studio-3.0
Leandro Borges Ferreira
sumber
sumber
Jawaban:
Tampaknya Anda memerlukan 3 entri gradle di aplikasi .gradle pada tingkat modul untuk menambahkan data binding
apply plugin: 'kotlin-kapt'
android { ... dataBinding { enabled = true } }
dependencies { ...... kapt "com.android.databinding:compiler:$compiler_version" }
Perhatikan bahwa saya membuat versi compiler sebagai variabel dalam build gradle level project sehingga dapat dikelola dari satu tempat
defaultnya adalah:
ext.kotlin_version = '1.1.3-2'
Saya menambahkan dengan sintaks braket:
sumber
UPD: Ini telah diperbaiki untuk Android Gradle plugin 3.0.0-alpha3, di root proyek Anda
build.gradle
, ubahbuildscript
dependencies
untuk digunakanIni sebenarnya adalah bug di plugin Kotlin Gradle 1.1.2-4 yang saling berhubungan dengan plugin Android Gradle 3.0.0-alpha1, yang disebabkan oleh bagaimana input dan output tugas ditetapkan (dan juga cara tugas dihubungkan dengannya hubungan ketergantungan).
Terima kasih @VyacheslavGerasimov karena telah membuat masalah KT-17936 .
Sebagai solusi sementara, Anda dapat mencoba kembali ke Kotlin Gradle plugin 1.1.2-2 dan menonaktifkan kompilasi inkremental:
Di root project Anda
build.gradle
, ubah versi plugin Kotlin Gradle:Tambahkan
local.properties
ke root proyek, dengan baris berikut:Ini adalah masalah yang diketahui bahwa Kotlin Gradle Plugin 1.1.2-2 dan di bawah crash dengan versi AGP terbaru, dan melumpuhkan kompilasi tambahan tampaknya untuk memperbaiki kecelakaan itu.
sumber
local.properties
file dalam proyek Anda juga. Mungkinlocal.properties
lebih cocok untuk properti mesin lokal .Bagi mereka yang masih mencari solusi yang tepat, Google telah memperbaiki masalah ini di Android Studio 3.0 Canary 3 build.
Jumat, 2 Juni 2017
Bekerja dengan konfigurasi gradle:
build.gradle (proyek)
build.gradle (modul)
sumber
1.1.2-4
tetap tidak berhasil. Seseorang masih harus menggunakan1.1.2-2
dan juga menambahkan kapt "com.android.databinding: compiler: 3.0.0-alpha3" ke build.gradle (modul) Anda atau Anda akan mendapatkan referensi yang belum terselesaikan: databinding.Saya baru-baru ini menulis Blog untuk Mengikat Data android dengan Kotlin di sini
Gunakan Classpath
Ketergantungan
untuk lebih jelasnya lihat posting ini
sumber