プロジェクトのビルド中に次のようなエラーが表示されます。このプロジェクトではCoordinatorLayoutを使用していません。 build.gradleに依存関係として追加されたばかりです。
私はAndroid Studio 3.2 Canary 4を使用しています。
LogCat
AGPBI:{"種類": "エラー"、 "テキスト": "プログラムの種類が既に存在します:Android.support.design.widget.CoordinatorLayout $ Behavior"、 "ソース":[{}]、 "ツール": "D8" :app:transformDexArchiveWithExternalLibsDexMergerForDebug FAILED *失敗したビルドは失敗しました。
com.Android.builder.dexing.DexArchiveMergerException:dexアーカイブのマージ中にエラーが発生しました:/windows/Other/app/build/intermediates/transforms/dexBuilder/debug/0.jar、/ windows/Other/app/build/intermediate/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
プログラムの種類はすでに存在します: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"
}
助けていただければ幸いです。ありがとう:)
次のように、サポートのappcompat
gradle依存関係を格下げしたときにうまくいきました。
implementation 'com.Android.support:appcompat-v7:27.0.2'
以前は
implementation 'com.Android.support:appcompat-v7:27.1.0'
_または_
また、これは バージョン27.1.0以降のサポート設計の依存関係 を次のようにアプリレベルbuild.gradle
に追加するだけで修正できます。
implementation 'com.Android.support:design:27.1.0'
私は同じ問題に直面しました、私はアプリレベルにAndroidサポートデザインの依存関係を追加しましたbuild.gradle
以下を追加してください:
implementation 'com.Android.support:design:27.1.0'
build.gradleで。今それは私のために働いています。
それは図書館のせいかもしれない、私はグライドのせいでそれに直面した。
そうだった
implementation 'com.github.bumptech.glide:glide:4.7.1'
だから私はexclude group: "com.Android.support"
を追加しました
implementation ('com.github.bumptech.glide:glide:4.7.1') {
exclude group: "com.Android.support"
}
問題を解決するには、最新のsupportLibrary
、バージョン27.1.1
を使用してください。私のために働いた。 (多くのバグ修正が含まれています - changelogを参照 )
これら2つがアプリレベルのbuild.gradleファイルで同じバージョンであることを確認してください。
implementation 'com.Android.support:appcompat-v7:27.1.1'
implementation 'com.Android.support:design:27.1.1'
私はそれが問題を解決するはずだと思います
Android studio 3.0 を使用しています。デザインパターンの依存関係を26.0.1から27.1.1にアップグレードしましたが、エラーはなくなりました。
次をグラドルに追加 implementation 'com.Android.support:design:27.1.1'
個人的には、私は私のapp/build.gradleに次の行を追加します。
implementation "com.Android.support:design:${rootProject.ext.supportLibVersion}"
この構文では、versionは動的です。
つかいます
implementation 'com.Android.support:appcompat-v7:27.1.1'
のように使用しないでください
implementation 'com.Android.support:appcompat-v7:27.+'
それはあなたにエラーを与えるかもしれず、これより古いバージョンを使わないでください。
またはイベントはこのようにしない
implementation 'com.Android.support:appcompat-v7:27.1.1'
implementation 'com.Android.support:design:27.1.1'
など...ライブラリの数
implementation 'com.Android.support:appcompat-v7:27.+'
同じライブラリですが、バージョンが異なるため、エラーが発生する可能性があります。
サポートをダウングレードする
previously it was
implementation 'com.Android.support:appcompat-v7:27.0.2'
これを使って
implementation 'com.Android.support:appcompat-v7:27.1.0'
implementation 'com.Android.support:design:27.1.0'
ワーキングハッピーコッドン
私はそれが遅い答えであることを知っています、しかし私は同じ問題を抱えていました、そして私の解決策は単にimplementation 'com.Android.support:design:28.0.0
または上記のサポートデザインライブラリを追加することでした!
ビルドスクリプトはアプリケーションのbuild.gradle依存関係と一致する必要があります。
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'
................
...........
}
依存関係を格下げする場合は、supportLibVersionとbuildToolsVersionも格下げします。
Androidの最新アップデートでは「コンパイル」キーワードをサポートしていないため、モジュール内の「実装」 build.gradle ファイルを使用してください。
そしてbuild.gradleの + 記号を使って依存関係をチェックしてください。
implementation 'com.Android.support:support-v4:28.+'
このような依存関係がある場合は、それらを特定のバージョンに更新するだけです。その後:
Androidサポートライブラリは28.0.0
以降は更新されません。 によるとサポートライブラリリリースノート -
これはAndroid.support パッケージの最後の機能リリースになるでしょう、そして開発者は AndroidX 1.0.0への移行をお勧めします 。
そのため、代わりに AndroidX supportライブラリを使用してください。あなたのケースではデザインライブラリは材料パッケージで利用可能になりました。
dependencies {
implementation 'com.google.Android.material:material:1.0.0' // instead of design
implementation 'androidx.appcompat:appcompat:1.0.2' // instead of support-v7
}
最新版を依存関係に入れました、 最新版をチェックすることができます ここを読んでください。
便利な投稿:
ここに記載されている答えのどれかがはたらかない場合それからそしてFile> Invalidate Catches/Restartの順に進みます。
これに対する解決策は、次の依存関係を取り除くことです。
implementation 'com.Android.support:design:26.1.0'
一般的な依存関係を
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'
}
追加のライブラリを配置するディレクトリに移動し、重複するライブラリを削除します。
私もこの問題を抱えていました。そして私はこのようにしてそれを解決しました:
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'
}
}
}
}
私の最小SDKが26だったことに注意してください、あなたはあなたとそれを変更する必要があります!
これを プロジェクトの gradle.properties
に追加して修正しました。
Android.enableJetifier=true
Android.useAndroidX=true
「プログラムタイプはすでに存在します」/ buildディレクトリの内容を削除します。生成されたバイナリファイルにDex(?)の問題があります。あなたと同じようにそれらの答えを得ました、彼らはこの問題を解決するのを助けました、しかし、他の多くを作成しました。ビルド内容の削除はすべての人に有効です。
私も同じ問題に直面しました。しかし、それから私はサポートライブラリの私が使っているバージョンが同じではないことに気づきました。
私がそれを同じにしたら、エラーは消えました。
あなたの場合
implementation 'com.Android.support:appcompat-v7:27.1.0'
implementation 'com.Android.support:design:27.0.2'
同じではないので、appcompatを
implementation 'com.Android.support:appcompat-v7:27.0.2'
したがって、あなたの問題は解決しました。
ただし、サポート設計バージョンをにアップグレードできれば解決できたかもしれません。
implementation 'com.Android.support:design:27.1.0'
com.Android.support.constraint:constraint-layout
を1.1.0から1.1.3に更新した後にこのエラーが発生しました。たぶん試す価値があります。