android - 多个dex文件定义Landroid/support/design/widget/CoordinatorLayout$LayoutParams

标签 android build.gradle android-multidex

我的项目中有多个 dex 文件定义错误。

我也在 build.gradle 中使用这两个标签

dexOptions {
    preDexLibraries = false
}
defaultConfig {
    multiDexEnabled true

}

但仍然出现此错误。

   Information:Gradle tasks [:app:assembleDebug]
Error:Error converting bytecode to dex:
Cause: com.android.dex.DexException: Multiple dex files define Landroid/support/design/widget/CoordinatorLayout$LayoutParams;
Error:com.android.dex.DexException: Multiple dex files define Landroid/support/design/widget/CoordinatorLayout$LayoutParams;
Error:  at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:661)
Error:  at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:616)
Error:  at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:598)
Error:  at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171)
Error:  at com.android.dx.merge.DexMerger.merge(DexMerger.java:198)
Error:  at com.android.builder.dexing.DexArchiveMergerCallable.call(DexArchiveMergerCallable.java:61)
Error:  at com.android.builder.dexing.DexArchiveMergerCallable.call(DexArchiveMergerCallable.java:36)
Error:  at java.util.concurrent.ForkJoinTask$AdaptedCallable.exec(ForkJoinTask.java:1424)
Error:  at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
Error:  at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
Error:  at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
Error:  at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
Error:Execution failed for task ':app:transformDexArchiveWithDexMergerForDebug'.
> com.android.build.api.transform.TransformException: com.android.dex.DexException: Multiple dex files define Landroid/support/design/widget/CoordinatorLayout$LayoutParams;

最佳答案

将库版本更新到 27.1.0 为我解决问题。

compile 'com.android.support:appcompat-v7:26.1.0'
compile 'com.android.support:design:26.1.0'
compile 'com.android.support:appcompat-v7:26.1.0'
compile 'com.android.support:mediarouter-v7:26.1.0'
compile 'com.android.support:recyclerview-v7:26.1.0'
compile 'com.android.support:cardview-v7:26.1.0'
compile 'com.android.support:support-v13:26.1.0'
compile 'com.android.support:support-v4:26.1.0'

收件人:

compile 'com.android.support:appcompat-v7:27.1.0'
compile 'com.android.support:design:27.1.0'
compile 'com.android.support:appcompat-v7:27.1.0'
compile 'com.android.support:mediarouter-v7:27.1.0'
compile 'com.android.support:recyclerview-v7:27.1.0'
compile 'com.android.support:cardview-v7:27.1.0'
compile 'com.android.support:support-v13:27.1.0'
compile 'com.android.support:support-v4:27.1.0'

关于android - 多个dex文件定义Landroid/support/design/widget/CoordinatorLayout$LayoutParams,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49028119/

相关文章:

configuration - Gradle使用文件结构拆分测试任务

android - Java.lang.ClassCastException : Android. support.v7.widget.ContentFrameLayout 无法转换为Android.support.v7.widget.ContentFrameLayout

android - 在 Android Studio 中使用 MultiDex 功能时,有没有办法限制主 dex 文件中的方法数量

android - Chrome Android 只考虑一个媒体查询

android - 没有规则来制作 libcamera_client_intermedietes

安卓 : Show quick preview (live) before exporting FFmpeg Video

javascript - 如何用addEventListener替换@click,让addEventListener像@click一样灵活?

android - 执行任务 : [:app:generateDebugSources] in project

spring - 如何排除 gradle 依赖项

android - 运行 Multidexed Espresso .APK