多个dex文件定义landroid/support/annotation/AnimRes

2022-08-31 16:31:43

当我将 Android 支持注释添加到我的依赖项中时

compile 'com.android.support:support-annotations:20.0.0'

我得到这个错误:

错误代码:2 输出:意外的顶级异常:com.android.dex.DexException:多个dex文件定义Landroid/support/annotation/AnimRes;at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:594) at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:552) at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:533) at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:170) at com.android.dx.merge.DexMerger.merge(DexMerger.java:188) at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:439) at com.android.dx.command.dexer.Main.runMonoDex(Main.java:287) at com.android.dx.command.dexer.Main.run(Main.java:230) at com.android.dx.command.dexer.Main.main(Main.java:199) at com.android.dx.command.Main.main(Main.java:103)

build.gradle

android {
    compileSdkVersion 19
    buildToolsVersion '20.0.0'

    defaultConfig {
        minSdkVersion 10
        targetSdkVersion 19
    }
}

dependencies {
    compile 'com.android.support:support-v4:19.0.0'
    compile 'com.crashlytics.android:crashlytics:1.+'
    compile 'com.android.support:support-annotations:20.0.0'
}

还有其他人遇到过这个问题吗?我已经从这里尝试了解决方案。


答案 1

问题是,曾经是一个包含Android注释的单独库,但由于某种原因,这些注释已经包含在文件的最新版本中。android-support-annotations.jarandroid-support-v4.jar

删除注释 jar 解决了这个问题。


答案 2

构建>清洁项目,并且它的工作原理


推荐