android DexArchiveMergerException:无法合并dex

2023-12-15

我最近更新了我的android sdk version from 25 to 26.更新后app,我收到此错误:

Error:Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'.
> com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex

这是我的 gradle 文件:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 26
    defaultConfig {
        applicationId "com.hago.ntr"
        minSdkVersion 15
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner
       "android.support.test.runner.AndroidJUnitRunner"
    }

    buildTypes {
         release {
             minifyEnabled false
             proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation 'com.android.support:appcompat-v7:26.1.0'
    implementation 'com.android.support:design:26.1.0'
    implementation 'com.android.support.constraint:constraint-layout:1.0.2'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.1'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
    implementation 'com.facebook.android:facebook-android-sdk:4.5.0'
    implementation 'com.twitter.sdk.android:tweet-ui:3.1.1'
    implementation files('libs/picasso-2.5.2.jar')
    implementation files('libs/YouTubeAndroidPlayerApi.jar')
}

请提出任何更改建议。我努力了clean and re-build但错误仍然存​​在。从上周开始我一直在尝试解决这个问题

请找到我在这里遇到的错误:

Exception is:
 org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:100)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:63)
at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:88)
at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:248)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:124)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:80)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:105)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:99)
at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:625)
at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:580)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:99)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)

Caused by: java.lang.RuntimeException: java.lang.RuntimeException:    java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex
at com.android.builder.dexing.DxDexArchiveMerger.mergeMonoDex(DxDexArchiveMerger.java:177)
at com.android.builder.dexing.DxDexArchiveMerger.mergeDexArchives(DxDexArchiveMerger.java:118)
at com.android.build.gradle.internal.transforms.DexMergerTransformCallable.call(DexMergerTransformCallable.java:97)
at com.android.build.gradle.internal.transforms.ExternalLibsMergerTransform.transform(ExternalLibsMergerTransform.kt:121)
at com.android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.java:222)
at com.android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.java:218)
at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:102)
at com.android.build.gradle.internal.pipeline.TransformTask.transform(TransformTask.java:213)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$IncrementalTaskAction.doExecute(DefaultTaskClassInfoStore.java:173)
at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:134)
at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:121)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:122)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:111)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)
... 27 more
Caused by: java.lang.RuntimeException: java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex
at com.android.builder.dexing.DxDexArchiveMerger.lambda$mergeMonoDex$0(DxDexArchiveMerger.java:171)

Caused by: java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex
Caused by: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex
at com.android.builder.dexing.DexArchiveMergerCallable.call(DexArchiveMergerCallable.java:72)
at com.android.builder.dexing.DexArchiveMergerCallable.call(DexArchiveMergerCallable.java:36)

Caused by: com.android.dex.DexException: Multiple dex files define  Lcom/squareup/picasso/Cache;
at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:661)
at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:616)
at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:598)
at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171)
at com.android.dx.merge.DexMerger.merge(DexMerger.java:198)
at com.android.builder.dexing.DexArchiveMergerCallable.call(DexArchiveMergerCallable.java:61)
... 1 more

先感谢您


Caused by: com.android.dex.DexException: Multiple dex files define  Lcom/squareup/picasso/Cache;

当工件依赖项可用时,请勿使用 JAR 文件。

Replace:

implementation files('libs/picasso-2.5.2.jar')

with:

implementation 'com.squareup.picasso:picasso:2.5.2'

这应该允许 Gradle 仅包含 Picasso 类的一份副本,而现在您正尝试包含这些类的两份副本。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

android DexArchiveMergerException:无法合并dex 的相关文章

随机推荐

  • Mathematica 输出格式

    Mathematica 如何决定何时对输出中的数字进行舍入 例如 给出输入 250000 5 给出输出 2500001 While 25000 5 确实打印为 25000 5 N 在这里也没有帮助 我需要使用 NumberForm 让它实际
  • 连接到 Oracle 中的拆分字符串列

    我的数据库中有一个列 其中包含 4 个字段作为 分隔字符串 我已经拆分了这些字段 因为我在报告中需要单独使用它们 我还需要单独使用这些字段作为针对另一个表的条件 我尝试过的事情 临时表 CREATE GLOBAL TEMPORARY TAB
  • 如何从 cordova-sqlite 同步获取数据?

    是否可以从cordova sqlite同步获取数据 我有一张桌子caseTable包含字段 ID 案例名称 日期 该表中的每一行对应于另一个以 caseName 字段命名的表 我需要循环遍历caseTable表并获取所引用表中的行数 fun
  • PHP 将“”添加到任何 xml 输出

    不确定发生了什么 但这是我的代码 template
  • Raycaster 中的高效地板/天花板渲染

    我在 Raycaster 引擎上工作了一段时间 我在较慢的机器上运行 我遇到的最具挑战性的问题是高效的地板和天花板铸造 我的问题是 我还可以使用什么其他更快的方法 我不确定末日地板和天花板是如何渲染的 到目前为止我尝试了两种典型的解决方案
  • 通过 JDBC 使用 Google Apps 脚本连接到 MSSQL Server 时出错

    我正在尝试使用 Google Apps 脚本连接到 Microsoft SQL Server 我正在使用 SQL Server 2008 R2 并且正在使用建议的脚本之一 该脚本应该读取数据并将其放入电子表格中 https develope
  • 在shell脚本中解析wmic的输出

    我正在尝试解析 WMIC 的输出 然后获取 PID 我的脚本如下 echo off setLocal enableExtensions enableDelayedExpansion FOR F tokens 1 delims A IN wm
  • 在 XAMPP for Windows 上从 CPAN 安装 perl 模块

    我对 Perl 很生疏 我认为在 Windows 中运行它没有帮助 我想安装this模块 我尝试了说明here安装 CPAN 模块 但尝试安装 App cpanminus 失败 第一步 我尝试运行cpan Config Simple它也不起
  • 链接共享dll库cmake clion项目

    我目前在 Clion 上有两个使用 cmake 的 C 项目 其中一个项目名为 sharedLibsDemo 我试图在该项目中创建一个共享库 在另一个项目中 我想使用由 共享 项目创建的库 目前 在 sharedLibsDemo 项目中 我
  • 获取其他语言的 TYPO3 Extbase Repository 项目

    如何从 extbase 存储库中获取不同语言的项目 我测试了什么 findByUid childUid query gt getQuerySettings gt setRespectSysLanguage FALSE query gt ge
  • 从 Python IDLE 控制 Paraview GUI

    我正在尝试使用 IDLE 以交互方式控制 Paraview 这将涉及从 IDLE 发送命令并查看 Paraview 中发生的更改 我宁愿不使用 Paraview python shell 到目前为止 我已经成功从 IDLE 导入 Parav
  • 使用 Pillow 将 png 转换为 jpeg

    我正在尝试使用枕头将 png 转换为 jpeg 我已经尝试了几篇文章但没有成功 这两个似乎适用于像这样的小 png 图像 第一个代码 from PIL import Image import os sys im Image open Ba
  • Dapper 参数无法通过 npgsql 连接与 PostgreSQL 一起使用,postgres 匿名函数参数化是否支持?

    我正在尝试使用 dapper 来参数化我编写的用于更新插入的 postgres 匿名函数 这是代码 private static int UpsertProductPrice IDbConnection connection Data Pr
  • 在 Dart 中解析 JSON

    我正在尝试将 JSON 解析为 Dart 中的对象 文档使用Map类型来解析 JSON 响应 关于他们的文件将 Dart 与 JSON Web 服务结合使用 解析 JSON 我剪了下面的例子 import dart convert main
  • 黑莓日期时间字符串格式

    我需要解析日期 时间字符串 添加原始偏移量并根据本地时区进行转换 我从服务器获取的日期时间格式如下 05 25 2012 02 30 PM 此格式不会被 HttpDateParser parse time 方法解析 但 HttpDatePa
  • 解除 modalViewController 的 modalViewController

    所以我有一个 UITabBarController 应用程序 我想显示一个登录页面 所以我这样做了 NSNotificationCenter defaultCenter addObserver self selector selector
  • 在 Python 中搜索 XML 内容

    我有以下 XML 文件 With StackOverflow 的一些帮助 我成功地实现了一些我计划做的事情 现在 我想向我的脚本添加一个搜索功能 并单独处理该子树 例如 我问用户 什么ID 他进入AL2012 2015 088 在一个巨大的
  • 设置seaborn lmplot 列的单独 ylim

    我使用以下命令制作了 lmplot 柱图 子图 g sns lmplot x COX y dX data tidy data hue hue col comp col wrap 8 fit reg True scatter True asp
  • 是否可以将自定义拼写检查字典添加到样式中?

    我发现许多网站提供了如何将自定义拼写检查字典添加到单个文本框的示例 如下所示
  • android DexArchiveMergerException:无法合并dex

    我最近更新了我的android sdk version from 25 to 26 更新后app 我收到此错误 Error Execution failed for task app transformDexArchiveWithExter