应用程序运行流畅但构建躲猫猫集成失败?

当我运行我的移动应用程序时,我将 peekaboo 集成到我的 Cordova 应用程序中,它运行良好,每个功能都在工作,但是当我开始在 android studio 中构建源代码时,它会出现以下错误。


Error converting bytecode to dex:

Cause: com.android.dex.DexException: Multiple dex files define 

Lokhttp3/internal/ws/WebSocketReader$FrameCallback;

Message{kind=ERROR, text=Error converting bytecode to dex:

Cause: com.android.dex.DexException: Multiple dex files define 

Lokhttp3/internal/ws/WebSocketReader$FrameCallback;, sources=[Unknown source 

file], original message=UNEXPECTED TOP-LEVEL EXCEPTION:

com.android.dex.DexException: Multiple dex files define 

Lokhttp3/internal/ws/WebSocketReader$FrameCallback;

at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:660)

at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:615)

at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:597)

at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:170)

at com.android.dx.merge.DexMerger.merge(DexMerger.java:197)

at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:503)

at com.android.dx.command.dexer.Main.runMonoDex(Main.java:333)

at com.android.dx.command.dexer.Main.runDx(Main.java:288)

at com.android.dx.command.dexer.Main.main(Main.java:244)

at com.android.dx.command.Main.main(Main.java:95)

, tool name=Optional.of(Dex)}

当我集成 peekaboo 时,在我的应用程序完美运行之前,任何人都可以指导我解决实际出错的问题,然后它在 build.and 上给出了这个错误,这是我的项目 build.gradle 文件。


饮歌长啸
浏览 103回答 2
2回答

慕森王

我对您在此处提到的 peekaboo lib 进行了快速研究,但找不到任何公开可用的信息,也许这是您的专有库。但是,从错误消息来看,这是因为您有多个位置,包括okhttp3库中的类。如果你想使用你的 peekaboo 模块中的那个,那么你可以在你的依赖项闭包中删除这一行。compile 'com.squareup.okhttp3:okhttp:3.7.0'  或修改如下以排除okhttpfromcom.squarupcompile 'com.squareup.okhttp3:okhttp:3.7.0' {    exclude module: "okhttp"}而且,您始终可以使用下面的 gradle 命令来对您的依赖树进行任何处理。./gradlew -q dependencies尝试找到您的okhttp模块存在的位置并排除其中之一,以便您可以在进行Dex合并时避免多个 dex 文件定义的错误。

弑天下

尝试从项目文件夹中删除 .gradle 文件夹和 .idea 文件夹,然后重建项目
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java