【问题标题】:How to fix "Program type already present: androidx.concurrent.futures.DirectExecutor"如何修复“程序类型已存在:androidx.concurrent.futures.DirectExecutor”
【发布时间】:2019-05-28 15:44:58
【问题描述】:

迁移到 AndroidX 后,由于迁移,我遇到了以下问题:

FAILURE:构建失败并出现异常。

  • 出了什么问题: 任务 ':app:transformDexArchiveWithExternalLibsDexMergerForDebug' 执行失败。

    com.android.builder.dexing.DexArchiveMergerException:合并 dex 档案时出错:/home/lexy/AndroidStudioProjects/Testbucks/app/build/intermediates/transforms/dexBuilder/debug/0.jar、/home/lexy/AndroidStudioProjects /Testbucks/app/build/intermediates/transforms/dexBuilder/debug/1.jar, /home/lexy/AndroidStudioProjects/Testbucks/app/build/intermediates/transforms/dexBuilder/debug/2.jar, /home/lexy/AndroidStudioProjects /Testbucks/app/build/intermediates/transforms/dexBuilder/debug/3.jar, /home/lexy/AndroidStudioProjects/Testbucks/app/build/intermediates/transforms/dexBuilder/debug/4.jar, /home/lexy/AndroidStudioProjects /Testbucks/app/build/intermediates/transforms/dexBuilder/debug/5.jar, /home/lexy/AndroidStudioProjects/Testbucks/app/build/intermediates/transforms/dexBuilder/debug/6.jar, /home/lexy/AndroidStudioProjects /Testbucks/app/build/intermediates/transforms/dexBuilder/debug/7.jar, /home/lexy/AndroidStudioProjects/Testbucks/app/build/intermediates/transforms/dexBuilder/debu g/8.jar、/home/lexy/AndroidStudioProjects/Testbucks/app/build/intermediates/transforms/dexBuilder/debug/9.jar、/home/lexy/AndroidStudioProjects/Testbucks/app/build/intermediates/transforms/dexBuilder/ debug/10.jar, /home/lexy/AndroidStudioProjects/Testbucks/app/build/intermediates/transforms/dexBuilder/debug/11.jar, /home/lexy/AndroidStudioProjects/Testbucks/app/build/intermediates/transforms/dexBuilder/ debug/12.jar, /home/lexy/AndroidStudioProjects/Testbucks/app/build/intermediates/transforms/dexBuilder/debug/13.jar, /home/lexy/AndroidStudioProjects/Testbucks/app/build/intermediates/transforms/dexBuilder/ debug/14.jar, /home/lexy/AndroidStudioProjects/Testbucks/app/build/intermediates/transforms/dexBuilder/debug/15.jar... 在https://developer.android.com/studio/build/dependencies#duplicate_classes 了解如何解决问题。 程序类型已经存在:androidx.concurrent.futures.DirectExecutor

有没有人遇到过类似的问题,因为我在任何论坛都没有找到解决这个问题的方法。

【问题讨论】:

  • 我也升级到 AndroidX 并遇到了这个问题。 :( 仍然遇到以下错误。 - 原因:com.android.tools.r8.utils.AbortException:错误:程序类型已经存在:androidx.concurrent.futures.DirectExecutor 原因:com.android.tools.r8。 CompilationFailedException:编译未能完成
  • 我认为这个问题还没有解决方案,因为我到处搜索,找不到任何解决方案,这个问题并不常见......
  • 我也是两手空空。看起来我将不得不恢复到旧图书馆。 :(
  • 目前受够了,不知道怎么办,走不动了
  • 你没有备份吗?如果您通过“迁移到 Androidx”重构代码,Android Studio 会要求提供压缩备份。我搬回了旧代码库。

标签: android android-studio gradle android-gradle-plugin androidx


【解决方案1】:

迁移到 AndroidX 后,我遇到了类似的问题,问题是因为 Guava。 我解决它的方法是包括以下内容:

configurations {
    all*.exclude group: 'com.google.guava', module: 'listenablefuture'
}

在 (Module:app) 中,大多数解决方案建议如果您遇到此问题,请在模块 gradle 中包含以下内容:

implementation("android.arch.work:work-runtime:1.0.0-alpha09") {
    exclude group: 'com.google.guava', module: 'listenablefuture' 
}

这会导致以下问题:程序类型已存在 androidx.concurrent.futures.DirectExecutor。

【讨论】:

  • 天哪,这就像一个魔术,经过 4 周的搜索,非常感谢....
  • 这行得通!我遇到了完全相同的问题,并尝试了其他“建议的解决方案”,也得到了相同的androidx.concurrent.futures.DirectExecutor 错误。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-10-14
  • 2019-06-22
  • 2019-07-28
  • 2023-03-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多