Kesalahan: Jenis program sudah ada: android.support.design.widget.CoordinatorLayout $ Perilaku

129

Saya mendapatkan kesalahan berikut saat membangun proyek. belum menggunakan CoordinatorLayout dalam proyek ini. baru saja ditambahkan sebagai ketergantungan dalam build.gradle:

Saya menggunakan Android Studio 3.2 Canary 4.

LogCat

AGPBI: {"kind": "error", "text": "Jenis program sudah ada: android.support.design.widget.CoordinatorLayout $ Behavior", "sources": [{}], "tool": "D8" }: app: transformDexArchiveWithExternalLibsDexMergerForDebug GAGAL GAGAL: Build gagal dengan pengecualian. * Apa yang salah: Eksekusi gagal untuk tugas ': aplikasi: transformDexArchiveWithExternalLibsDexMergerForDebug'.

com.android.builder.dexing.DexArchiveMergerException: Kesalahan saat menggabungkan arsip dex: /windows/Other/app/build/intermediates/transforms/dexBuilder/debug/0.jar, / windows / Other / app / build / intermediates / transforms / dexBuilder / debug / 1.jar, /windows/Other/app/build/intermediates/transforms/dexBuilder/debug/4.jar,. . ...................

/windows/Other/app/build/intermediates/transforms/dexBuilder/debug/294.jar

Jenis program sudah ada: android.support.design.widget.CoordinatorLayout $ Behavior

build.gradle

apply plugin: 'com.android.application'

apply plugin: 'kotlin-android'

apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'

android {
    compileSdkVersion 27
    buildToolsVersion "27.0.3"
    defaultConfig {
        applicationId "com.dagkot"
        minSdkVersion 16
        targetSdkVersion 27
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            buildConfigField "String", "BASE_URL", "\"http://api.openweathermap.org/data/2.5/\""
            buildConfigField "String", "API_KEY", "\"435e9075f348868c2714fe7c6895efa5\""
        }
        debug {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        buildConfigField "String", "BASE_URL", "\"http://api.openweathermap.org/data/2.5/\""
        buildConfigField "String", "API_KEY", "\"xxxx\""
    }
}
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:27.1.0'
    implementation 'com.android.support.constraint:constraint-layout:1.0.2'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation('com.android.support.test.espresso:espresso-core:3.0.1', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    implementation"org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"


    // Dagger dependencies
    compileOnly 'org.glassfish:javax.annotation:10.0-b28'
    implementation "com.google.dagger:dagger:$rootProject.daggerVersion"
    implementation "com.google.dagger:dagger-android:$rootProject.daggerVersion"
    implementation "com.google.dagger:dagger-android-support:$rootProject.daggerVersion"
    kapt "com.google.dagger:dagger-android-processor:$rootProject.daggerVersion"
    kapt "com.google.dagger:dagger-compiler:$rootProject.daggerVersion"

    //Butterknife dependencies
    implementation 'com.jakewharton:butterknife:8.8.1'
    kapt 'com.jakewharton:butterknife-compiler:8.8.1'

    // Architecture Components Dependencies
    kapt "android.arch.lifecycle:compiler:$rootProject.lifeCycle"
    implementation "android.arch.lifecycle:extensions:$rootProject.lifeCycle"
    implementation "android.arch.lifecycle:reactivestreams:$rootProject.lifeCycle"
    implementation "com.android.support:cardview-v7:$rootProject.supportLibraryVersion"

    // Retrofit/RxJava Dependencies
    implementation "com.squareup.retrofit2:retrofit:$rootProject.retrofitVersion"
    implementation "com.squareup.retrofit2:adapter-rxjava2:$rootProject.retrofitVersion"
    implementation "com.squareup.retrofit2:converter-gson:$rootProject.retrofitVersion"
    implementation "io.reactivex.rxjava2:rxandroid:$rootProject.rxAndroidVersion"
    implementation 'com.squareup.okhttp3:logging-interceptor:3.6.0'
    implementation 'com.jakewharton.rxbinding2:rxbinding-kotlin:2.1.1'

    // GSON
    implementation "com.google.code.gson:gson:$rootProject.gsonVersion"

    // Rx Location Manager
    implementation 'io.nlopez.smartlocation:library:3.3.3'
    implementation 'io.nlopez.smartlocation:rx:3.3.1'

    //Anko Dependencies
    implementation "org.jetbrains.anko:anko-commons:$rootProject.anko_version"
    implementation "org.jetbrains.anko:anko-design:$rootProject.anko_version"
    implementation 'com.android.support:design:27.0.2'

    implementation("com.github.hotchemi:permissionsdispatcher:3.1.0") {
        // if you don't use android.app.Fragment you can exclude support for them
        exclude module: "support-v13"
    }
    kapt "com.github.hotchemi:permissionsdispatcher-processor:3.1.0"
}
Ankit Mehta
sumber
5
cukup tambahkan implementasi 'com.android.support:design:27.1.1' dalam file gradle
Tushar Lathiya
1
@TusharLathiya Saya memiliki masalah yang sama tetapi penurunan peringkat berhasil untuk saya. Saya menggunakan versi 27.0.0
Eswar
Jika Anda pernah menginstal firebase-ui dalam ketergantungan aplikasi, ini dapat terjadi .. Saya menghabiskan banyak waktu untuk mencari tahu hal ini! Saya tidak pernah membutuhkan firebase-ui karena saya menggunakan picasso untuk mengambil gambar dari penyimpanan firebase.
Aswini Iyer

Jawaban:

214

Ini berfungsi ketika saya menurunkan appcompatketergantungan dukungan gradle dukungan , seperti mengikuti:

implementation 'com.android.support:appcompat-v7:27.0.2'

sebelumnya itu

implementation 'com.android.support:appcompat-v7:27.1.0'

ATAU

Ini juga dapat diperbaiki dengan hanya menambahkan ketergantungan desain dukungan versi 27.1.0 atau lebih tinggi ke tingkat aplikasi Anda build.gradlesebagai berikut:

implementation 'com.android.support:design:27.1.0'
Ankit Mehta
sumber
45
Begitu mereka menerbitkan versi baru, mereka membuat kita gila karena kesalahan aneh. : |
Nguyen Minh Binh
Sebenarnya itu sangat berlawanan dalam kasus saya. 27.0.xgagal, saat menabrak 27.1.0membuat kompilasi proyek ... meh ...
Marcin Orlowski
2
ubah ke compile 'com.android.support:design:27.1.0'dalam versi baru
Milad
@AnkitMehta Saya punya masalah serupa dan penurunan versi tidak berhasil untuk saya.
Eswar
coba tambahkan ketergantungan desain dukungan.
Ankit Mehta
78

Saya menghadapi masalah yang sama, saya menambahkan dependensi desain dukungan android ke tingkat aplikasi build.gradle

Tambahkan berikut ini:

implementation 'com.android.support:design:27.1.0'

di build.gradle. Sekarang ini berfungsi untuk saya.

Balaji Purusothaman
sumber
2
Bekerja untukku. Masalah ini terjadi setelah perpustakaan mulai menggunakan 27.1.0 saat aplikasi masih menggunakan 26.xx
Hong
Membersihkan / membangun kembali proyek mungkin membantu jika tidak segera memperbaiki masalah. Itu yang berhasil untuk saya.
f3d0r
Sebagian besar kesalahan seperti itu terjadi karena ketidakcocokan versi. Jika menggunakan appcompat, pustaka desain lebih baik untuk menggunakan versi terbaru. Contoh: implementasi 'com.android.support:appcompat-v7:27.1.1' implementasi 'com.android.support:design:27.1.1'
eranda.del
Hai, Tolong bantu saya karena saya menggunakan perpustakaan ini untuk menambahkan Gambar dalam PDF github.com/TomRoush/PdfBox-Android/issues/219 dan saya mendapatkan kesalahan ini. Jenis program sudah ada: org.spongycastle.cert.AttributeCertificateHolder What apakah saya salah?
Priyanka Singhal
32

Mungkin karena perpustakaan, saya menghadapinya karena Glide.

Dulu

implementation 'com.github.bumptech.glide:glide:4.7.1'

Jadi saya menambahkan exclude group: "com.android.support"Dan itu menjadi

implementation ('com.github.bumptech.glide:glide:4.7.1') {
        exclude group: "com.android.support"
    }
Kishan Solanki
sumber
1
Saya telah menambahkan baris ini ke ketiga dependensi yang saya gunakan. Itu menyelesaikan kesalahan saya. Terima kasih.
KhanStan99
13

Pastikan kedua ini adalah versi yang sama di file build.gradle tingkat aplikasi Anda

    implementation 'com.android.support:appcompat-v7:27.1.1'
    implementation 'com.android.support:design:27.1.1'

Saya pikir itu harus menyelesaikan masalah

James Idowu
sumber
12

Gunakan terbaru supportLibrary, versi 27.1.1untuk memecahkan masalah. bekerja untukku. (termasuk banyak perbaikan bug - lihat changelog )

LOG_TAG
sumber
1
Saya masih menghadapi beberapa erro seperti:Error:Program type already present: org.apache.http.impl.auth.HttpEntityDigester
Trinity
implementasi 'com.android.support:design:27.1.0 tambahkan ini stackoverflow.com/questions/49112190/…
LOG_TAG
9

Secara pribadi, saya menambahkan baris berikut ke app / build.gradle saya:

implementation "com.android.support:design:${rootProject.ext.supportLibVersion}"

Dengan sintaks ini, versi bersifat dinamis.

Jérôme Legrand
sumber
6

Saya menggunakan android studio 3.0 dan saya meningkatkan ketergantungan pola desain dari 26.0.1 ke 27.1.1 dan kesalahan sudah hilang sekarang.

Tambahkan Mengikuti dalam gradle implementation 'com.android.support:design:27.1.1'

Dhruvisha
sumber
6

Menggunakan

implementation 'com.android.support:appcompat-v7:27.1.1'

Jangan gunakan suka

implementation 'com.android.support:appcompat-v7:27.+'

Mungkin memberi Anda kesalahan dan tidak menggunakan versi yang lebih lama dari ini.

atau acara tidak seperti ini

implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:design:27.1.1' 

dll ... jumlah perpustakaan dan kemudian

implementation 'com.android.support:appcompat-v7:27.+'

perpustakaan yang sama tetapi memiliki versi yang berbeda, itu dapat memberi Anda kesalahan.

Deven
sumber
5

Saya menurunkan peringkat dukungan

previously it was
implementation 'com.android.support:appcompat-v7:27.0.2'

Gunakan

implementation 'com.android.support:appcompat-v7:27.1.0'

implementation 'com.android.support:design:27.1.0'

Ini Happy Codng Bekerja

Keshav Gera
sumber
7
Tampaknya lebih seperti upgrade jika Anda beralih dari 27.0.2 ke 27.1.0
Denny
4

Pembaruan Penting

Pustaka dukungan Android tidak akan diperbarui setelah 28.0.0. Menurut Catatan Rilis Perpustakaan Dukungan -

Ini akan menjadi rilis fitur terakhir di bawah kemasan android.support, dan pengembang didorong untuk bermigrasi ke AndroidX 1.0.0 .

Jadi gunakan pustaka dukungan AndroidX sebagai gantinya. Di perpustakaan kasus desain Anda sekarang tersedia dalam paket bahan.

dependencies {
    implementation 'com.google.android.material:material:1.0.0' // instead of design
    implementation 'androidx.appcompat:appcompat:1.0.2' // instead of support-v7
}

Saya telah menaruh versi terbaru dalam ketergantungan, Anda dapat memeriksa versi terbaru di sini pada waktu baca.

Posting yang Berguna:

  1. Pengenalan & integrasi AndroidX
  2. Pelajari tentang Jetifier (mesin di balik migrasi AndroidX)
  3. Some Do's and Dont's
Khemraj
sumber
2

Saya punya masalah ini juga; dan saya memutuskan bahwa dengan cara ini:

configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
    def requested = details.requested
    if (requested.group == 'com.android.support') {
        if (!requested.name.startsWith("multidex")) {
            details.useVersion '26.0.1'
        }
    }
  }
}

hati-hati SDK min saya berusia 26, Anda harus mengubahnya dengan milikmu!

محمد
sumber
2

"Jenis program sudah ada" Hapus isi direktori Anda / bangun, ia memiliki beberapa masalah Dex (?) Dengan file biner yang dihasilkan. Mendapat jawaban seperti Anda, mereka membantu menyelesaikan masalah ini tetapi menciptakan banyak lainnya. Penghapusan konten build berfungsi untuk semua.

Vitali Pom
sumber
1

Saya tahu ini adalah jawaban yang terlambat tetapi saya memiliki masalah yang sama dan solusi saya baru saja menambahkan implementation 'com.android.support:design:28.0.0atau ada perpustakaan desain dukungan di atas !!

raed
sumber
1

Ini bisa terjadi ketika satu perpustakaan dimuat ke gradle beberapa kali. Paling sering melalui perpustakaan lain yang terhubung.

Hapus implementasi perpustakaan ini di build.gradle

Kemudian Bangun -> Bersihkan proyek

dan Anda dapat menjalankan perakitan)

Дмитрий Гаврилов
sumber
0

Karena pembaruan terbaru android tidak mendukung 'kompilasi' penggunaan kata kunci 'implementasi' di dalam modul build.gradle Anda file .

Dan periksa secara menyeluruh di build.gradle untuk ketergantungan dengan tanda + seperti ini.

implementation 'com.android.support:support-v4:28.+'

Jika ada dependensi seperti ini, cukup perbarui dengan versi tertentu. Setelah itu:

  1. Sinkronkan gradle.
  2. Bersihkan proyek Anda.
  3. Bangun kembali proyek.
amit pandya
sumber
0

Jika salah satu jawaban yang disebutkan di sini tidak berfungsi, buka File> Invalidate Catches / Restart

Ssubrat Rrudra
sumber
1
itu tidak membantu :(
Jorgesys
0

Solusi untuk ini adalah menghapus ketergantungan berikut ini:

implementation 'com.android.support:design:26.1.0'

menempatkan dependensi umum sebagai:

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    //noinspection GradleCompatible
    implementation 'com.android.support:appcompat-v7:27.1.1'
    implementation 'com.android.support:support-compat:26.1.0'
    implementation 'com.android.support:multidex:1.0.3'    
    implementation 'com.android.support:support-v4:26.1.0'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    implementation 'com.facebook.android:audience-network-sdk:4.99.1'
}
Pradeep Sheoran
sumber
0

Menambahkan ini ke proyek gradle.properties memperbaikinya bagi kami:

android.enableJetifier=true
android.useAndroidX=true
Pitel
sumber
0

Skrip build Anda harus cocok dengan dependensi build.gradle aplikasi.

ext {
        buildToolsVersion = "27.0.3"
        minSdkVersion = 16
        compileSdkVersion = 27
        targetSdkVersion = 26
        supportLibVersion = "27.1.1"
    }


dependencies {
    .................
    ...................

    implementation 'com.android.support:support-v4:27.1.0'
    implementation 'com.android.support:design:27.1.0'
    ................
    ...........
}

jika Anda ingin menurunkan versi dependensi, maka turunkan supportLibVersion dan buildToolsVersion.

pengguna3143487
sumber
0

Saya juga menghadapi masalah yang sama. Tetapi kemudian saya menyadari bahwa versi yang saya gunakan dari pustaka dukungan tidak sama.

Setelah saya membuatnya sama, kesalahannya hilang.

Dalam kasus Anda

implementation 'com.android.support:appcompat-v7:27.1.0'
implementation 'com.android.support:design:27.0.2'

tidak sama, jadi Anda hanya menurunkan appcompat ke

implementation 'com.android.support:appcompat-v7:27.0.2'

karenanya, masalah Anda terpecahkan.

Tetapi Anda juga bisa menyelesaikannya jika Anda bisa meningkatkan versi desain dukungan

implementation 'com.android.support:design:27.1.0'
Ankush Joshi
sumber
0

Buka direktori tempat Anda meletakkan pustaka tambahan dan menghapus pustaka yang digandakan.

BlackGraper
sumber
-1

Mengubah semua dependensi untuk dikompilasi daripada implementasi, kemudian saya membangun kembali proyek tanpa kesalahan. Kemudian saya beralih kembali ke implementasi daripada membiarkannya sebagai kompilasi.

Steve White
sumber