为了账号安全,请及时绑定邮箱和手机立即绑定

DexArchiveMergerException 程序类型已存在:aaa

DexArchiveMergerException 程序类型已存在:aaa

慕田峪9158850 2023-11-10 17:16:02
我收到这个异常:AGPBI:{“kind”:“error”,“text”:“程序类型已存在:aaa”,“sources”:[{}],“tool”:“D8”} com.android.builder.dexing.DexArchiveMergerException :合并 dex 存档时出错:了解如何解决该问题: https://developer.android.com/studio/build/dependency#duplicate_classes。程序类型已存在: aaa 位于 com.android.builder.dexing.D8DexArchiveMerger.getExceptionToRethrow(D8DexArchiveMerger.java:131) 位于 com.android.builder.dexing.D8DexArchiveMerger.mergeDexArchives(D8DexArchiveMerger.java:118) 位于 com.android.build .gradle.internal.transforms.DexMergerTransformCallable.call(DexMergerTransformCallable.java:102)在com.android.build.gradle.internal.tasks.DexMergingTaskRunnable.run(DexMergingTask.kt:444)在com.android.build.gradle.internal .tasks.Workers$ActionFacade.run(Workers.kt:335) 在 org.gradle.workers.internal.DefaultWorkerServer.execute(DefaultWorkerServer.java:39) 在 org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.execute(NoIsolationWorkerFactory) .java:61) 在 org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:44) 在 org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:41) 在 org.gradle。 Internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:416) 在 org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:406) 在 org.gradle.internal.operations.DefaultBuildOperationExecutor$1。执行(DefaultBuildOperationExecutor.java:165) 在 失败:构建失败并出现异常。出了什么问题:任务“:app:mergeDexProdRelease”执行失败。执行 com.android.build.gradle.internal.tasks.Workers$ActionFacade com.android.builder.dexing.DexArchiveMergerException 时发生故障:合并 dex 存档时出错:了解如何解决该问题,请访问https://developer.android .com/studio/build/dependency#duplicate_classes。已存在的程序类型:aaa我不确定这个文件意味着大量搜索但未能创建构建。
查看完整描述

3 回答

?
江户川乱折腾

TA贡献1851条经验 获得超5个赞

因此,您这里有一个混淆的构建,请先尝试禁用此混淆,然后查看问题是否仍然存在。

如果它持续存在,它可能会向您显示实际的悬空类,该类在大多数情况下都会指向一个或多个依赖于冲突的第 3 方依赖项的库,在这种情况下,您只需将该依赖项传递到包含exclude在你的构建。

a.a.a如果它在非混淆构建中不存在,请检查符号文件以获取被混淆的类/程序类型的名称。该文件通常位于下面的某个位置app/build/outputs/**/mapping.txt

这也可能完全是一个临时问题,在这种情况下,进行一次干净的构建并重试。


查看完整回答
反对 回复 2023-11-10
?
汪汪一只猫

TA贡献1898条经验 获得超8个赞

我遇到了这样的问题

cd android && ./gradlew clean

帮助过我


查看完整回答
反对 回复 2023-11-10
?
MM们

TA贡献1886条经验 获得超2个赞

查看您的 build.gradle 文件,您似乎已添加库和SA 模块两次

implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation(project(':SA')) {transitive = true}

罪魁祸首是第二个。

也许这可能是您的问题,因为错误指出了重复项。

尝试删除相同的内容,或者我认为您可能不需要遗留库本身。

因为有时它会自动添加到我的 build.gradle 中,我必须手动删除它。


查看完整回答
反对 回复 2023-11-10
  • 3 回答
  • 0 关注
  • 80 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信