Podczas tworzenia projektu pojawia się następujący błąd. nie używali CoordinatorLayout w tym projekcie. właśnie dodany jako zależność w build.gradle:
Używam Android Studio 3.2 Canary 4.
LogCat
AGPBI: {"kind": "error", "text": "Typ programu już istnieje: android.support.design.widget.CoordinatorLayout $ Behavior", "sources": [{}], "tool": "D8" }: app: transformDexArchiveWithExternalLibsDexMergerForDebug FAILED FAILURE: kompilacja nie powiodła się z wyjątkiem. * Co poszło nie tak: wykonanie nie powiodło się dla zadania „: app: transformDexArchiveWithExternalLibsDexMergerForDebug”.
com.android.builder.dexing.DexArchiveMergerException: Błąd podczas scalania archiwów dex: /windows/Other/app/build/intermediates/transforms/dexBuilder/debug/0.jar, / windows / Other / app / build /mediates / 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
Typ programu już obecny: 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"
}
źródło
Odpowiedzi:
appcompat
Zadziałało, gdy obniżyłem poziom zależności od gradle wsparcia , na przykład:implementation 'com.android.support:appcompat-v7:27.0.2'
wcześniej tak było
implementation 'com.android.support:appcompat-v7:27.1.0'
LUB
Można to również naprawić, dodając zależność projektu wsparcia wersji 27.1.0 lub nowszej do poziomu aplikacji
build.gradle
w następujący sposób:implementation 'com.android.support:design:27.1.0'
źródło
27.0.x
nie powiodło się, podczas wskakiwania na27.1.0
kompilację gotowego projektu ... eee ...compile 'com.android.support:design:27.1.0'
w nowych wersjachNapotkałem ten sam problem, dodałem zależności projektowe wsparcia Androida do poziomu aplikacji
build.gradle
Dodaj następujące:
implementation 'com.android.support:design:27.1.0'
w build.gradle. Teraz to działa dla mnie.
źródło
./gradlew -q yourApp:dependencies --configuration debugRuntimeClasspath
do sprawdzenia zduplikowanych zależności. Upewnij się, że nie zależy od jednej biblioteki z różnymi wersjami.To może być spowodowane biblioteką, napotkałem to przez Glide'a.
To było
implementation 'com.github.bumptech.glide:glide:4.7.1'
Więc dodałem
exclude group: "com.android.support"
i stało sięimplementation ('com.github.bumptech.glide:glide:4.7.1') { exclude group: "com.android.support" }
źródło
Upewnij się, że te dwie wersje są w tej samej wersji w pliku build.gradle na poziomie aplikacji
implementation 'com.android.support:appcompat-v7:27.1.1' implementation 'com.android.support:design:27.1.1'
Myślę, że to powinno rozwiązać problem
źródło
Użyj najnowszej
supportLibrary
wersji,27.1.1
aby rozwiązać problem. pracował dla mnie. (zawiera wiele poprawek błędów - patrz dziennik zmian )źródło
Error:Program type already present: org.apache.http.impl.auth.HttpEntityDigester
Osobiście dodaję następujący wiersz do mojej aplikacji / build.gradle:
implementation "com.android.support:design:${rootProject.ext.supportLibVersion}"
Dzięki tej składni wersja jest dynamiczna.
źródło
Używam Android Studio 3.0 i uaktualniam zależność wzorców projektowych z 26.0.1 do 27.1.1 i błąd zniknął.
Dodaj obserwujących w gradle
implementation 'com.android.support:design:27.1.1'
źródło
Posługiwać się
implementation 'com.android.support:appcompat-v7:27.1.1'
Nie używaj like
implementation 'com.android.support:appcompat-v7:27.+'
Może to spowodować błąd i nie używaj starszej wersji niż ta.
lub wydarzenie tego nie lubi
implementation 'com.android.support:appcompat-v7:27.1.1' implementation 'com.android.support:design:27.1.1'
etc ... numery bibliotek, a następnie
implementation 'com.android.support:appcompat-v7:27.+'
ta sama biblioteka, ale ma inną wersję, może spowodować błąd.
źródło
Obniżam poziom wsparcia
previously it was implementation 'com.android.support:appcompat-v7:27.0.2'
Użyj tego
implementation 'com.android.support:appcompat-v7:27.1.0' implementation 'com.android.support:design:27.1.0'
Jego Pracy Happy Codng
źródło
Ważna aktualizacja
Biblioteki obsługi Androida nie zostaną zaktualizowane po
28.0.0
. Zgodnie z informacjami o wydaniu biblioteki pomocy technicznej -Zamiast tego użyj bibliotek obsługujących AndroidX . W Twoim przypadku biblioteka projektów jest teraz dostępna w pakiecie materiałowym.
dependencies { implementation 'com.google.android.material:material:1.0.0' // instead of design implementation 'androidx.appcompat:appcompat:1.0.2' // instead of support-v7 }
Uzależniłem najnowsze wersje, możesz sprawdzić najnowszą wersję tutaj w czasie czytania.
Przydatne posty:
źródło
Ja też miałem ten problem; i rozwiązałem to w ten sposób:
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' } } } }
uważaj, mój min SDk to 26, musisz to zmienić ze swoim!
źródło
„Typ programu już istnieje” Usuń zawartość katalogu / build, ma jakiś problem Dex (?) Z wygenerowanymi plikami binarnymi. Otrzymałem te odpowiedzi, tak jak ty, pomogły rozwiązać ten problem, ale stworzyły wiele innych. Usuwanie zawartości kompilacji działa dla wszystkich.
źródło
Wiem, że to późna odpowiedź, ale miałem ten sam problem i moim rozwiązaniem było po prostu dodanie
implementation 'com.android.support:design:28.0.0
lub dowolna z powyższych bibliotek projektów wsparcia!źródło
Może się to zdarzyć, gdy jedna biblioteka jest ładowana do gradle kilka razy. Najczęściej za pośrednictwem innych połączonych bibliotek.
Usuń implementację tej biblioteki w build.gradle
Następnie buduj -> Wyczyść projekt
i możesz uruchomić montaż)
źródło
Ponieważ najnowsza aktualizacja Androida nie obsługuje słowa kluczowego „kompiluj”, użyj słowa kluczowego „implementacja” w pliku build.gradle modułu .
I sprawdź dokładnie w build.gradle pod kątem zależności z takim znakiem + .
implementation 'com.android.support:support-v4:28.+'
Jeśli istnieją takie zależności, po prostu zaktualizuj je określoną wersją. Po tym:
źródło
Jeśli którakolwiek z wymienionych tutaj odpowiedzi nie działa, przejdź do Plik> Unieważnij połowy / Uruchom ponownie
źródło
Rozwiązaniem tego problemu jest usunięcie tej zależności:
implementation 'com.android.support:design:26.1.0'
umieść ogólne zależności jako:
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' }
źródło
Dodanie tego do projektu
gradle.properties
rozwiązało problem:android.enableJetifier=true android.useAndroidX=true
źródło
Twój skrypt kompilacji powinien pasować do zależności build.gradle aplikacji.
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' ................ ........... }
jeśli chcesz obniżyć poziom zależności, obniż także wersję supportLibVersion i buildToolsVersion.
źródło
Ja też miałem ten sam problem. Ale potem zdałem sobie sprawę, że wersje bibliotek pomocniczych, których używam, nie są takie same.
Kiedy zrobiłem to samo, błąd zniknął.
W Twoim przypadku
implementation 'com.android.support:appcompat-v7:27.1.0' implementation 'com.android.support:design:27.0.2'
nie są takie same, więc właśnie obniżyłeś appcompat do
implementation 'com.android.support:appcompat-v7:27.0.2'
stąd twój problem został rozwiązany.
Ale możesz również rozwiązać, gdybyś mógł zaktualizować wersję projektu wsparcia do
implementation 'com.android.support:design:27.1.0'
źródło
Przejdź do katalogu, w którym umieścisz dodatkowe biblioteki i usuń zduplikowane biblioteki.
źródło
Zmieniłem wszystkie zależności na kompilację zamiast implementacji, potem odbudowuję projekt bez błędów. Następnie wróciłem do implementacji, zamiast zostawiać ją jako kompilację.
źródło