【问题标题】:Error implementing Vimeo-networking实施 Vimeo 网络时出错
【发布时间】:2017-11-14 20:45:04
【问题描述】:

我尝试了许多不同的方法将 Vimeo 网络连接到我的应用程序中,但都没有奏效。如果我删除了实现,它就可以正常工作,所以我知道这是问题所在。 compile 'com.vimeo.networking:vimeo-networking:1.1.1'

给我这个错误

错误:任务 ':app:transformDexArchiveWithExternalLibsDexMergerForDebug' 执行失败。 > java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: 无法合并 dex

我已经到处搜索了,但还没有找到解决方案(是的,我已经尝试过清理和重建项目)

【问题讨论】:

  • 好的就行。我必须等到明天,但我在下面添加了答案。

标签: java android vimeo-android


【解决方案1】:

我相信这是 vimeo-networking 库的结果,其中包含一个依赖项,您也将其单独包含在您的 gradle 文件中。 Looking at the gradle file for a hint,主要怀疑是 intellij 注释 jar 'com.intellij:annotations:12.0@jar' 依赖项,当我看到它也包含在您的主项目和子项目中时会导致类似的问题。

解决这个问题的方法是在vimeo-networking库中编译时排除注解jar如下:

compile ('com.vimeo.networking:vimeo-networking:1.1.1') {
    exclude group: 'org.jetbrains', module: 'annotations'
}

试试这个,看看它是否修复了你的构建异常。一般我看到Unable to merge dex错误的原因是最终dex文件中有同一个类的多个定义,通常是多次包含一个jar文件造成的。

【讨论】:

  • 我认为你是对的,因为我的错误是关于重复,但它不起作用。
  • 它说多个 dex 文件定义 Lorg/intellij/lang/annotations/JdkConstants$TreeSelectionMode;在 gradle 控制台中。还有什么我可能需要做的吗?
  • 谢谢!我是 Android 新手,您的回复让我找到了解决方案。谢谢。
【解决方案2】:

解决方案:anthonycr 的回答很完美,但我也必须这样做:

implementation ("org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version") {
    exclude group: 'org.jetbrains', module: 'annotations'
}

implementation ('com.vimeo.networking:vimeo-networking:1.1.1') {
    exclude group: 'org.jetbrains', module: 'annotations'
}

【讨论】:

    猜你喜欢
    • 2018-06-07
    • 2018-12-12
    • 2013-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-01
    相关资源
    最近更新 更多