Android Dex - 添加 jackson 库后出错

标签 android dex

最近我将下面提到的 jackson jar 添加到我项目的 libs 文件夹中。

1.jackson-annotations-2.2.3.jar
2.jackson-core-2.2.3.jar
3.jackson-databind-2.2.3.jar

当我运行我的项目时突然出现以下错误。

Error:Android Dex: [MyProjectName] Unable to execute DX
Error:Android Dex: [MyProjectName] java.lang.IllegalArgumentException: method ID not in [0, 0xffff]: 65536
Error:Android Dex: [MyProjectName] at com.android.dx.merge.DexMerger$6.updateIndex(DexMerger.java:501)
Error:Android Dex: [MyProjectName] at com.android.dx.merge.DexMerger$IdMerger.mergeSorted(DexMerger.java:276)
Error:Android Dex: [MyProjectName] at com.android.dx.merge.DexMerger.mergeMethodIds(DexMerger.java:490)
Error:Android Dex: [MyProjectName] at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:167)
Error:Android Dex: [MyProjectName] at com.android.dx.merge.DexMerger.merge(DexMerger.java:188)
Error:Android Dex: [MyProjectName] at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:439)
Error:Android Dex: [MyProjectName] at com.android.dx.command.dexer.Main.runMonoDex(Main.java:287)
Error:Android Dex: [MyProjectName] at com.android.dx.command.dexer.Main.run(Main.java:230)
Error:Android Dex: [MyProjectName] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Error:Android Dex: [MyProjectName] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
Error:Android Dex: [MyProjectName] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
Error:Android Dex: [MyProjectName] at java.lang.reflect.Method.invoke(Method.java:483)
Error:Android Dex: [MyProjectName] at org.jetbrains.android.compiler.tools.AndroidDxRunner.runDex(AndroidDxRunner.java:161)
Error:Android Dex: [MyProjectName] at org.jetbrains.android.compiler.tools.AndroidDxRunner.main(AndroidDxRunner.java:294)
Error:Android Dex: [MyProjectName] at com.intellij.rt.execution.CommandLineWrapper.main(CommandLineWrapper.java:121)

最佳答案

它看起来类似于这个:link .

原因是一个dex文件中的最大方法数是65536。

[编辑]

我不确定这是否是个好主意。我刚刚阅读了一篇关于在运行时动态加载 jar 文件的文章。这样,您必须先删除一两个 jar 并确保您的应用程序可以运行。然后,在运行时加载另一个 jar。

教程在这里:blog.csdn.net/bboyfeiyu/article/details/11710497

关于Android Dex - 添加 jackson 库后出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24526623/

相关文章:

android - android 中的 ProgressDialog 解雇

android - 仅在 Android Lollipop 5.0 中无法获取前台 Activity 名称

android - Android 上的基本身份验证

android - 将字节码转换为 dex 时出错 : Cause: com. android.dex.DexException:

android - 要在进程中运行dex,Gradle守护程序需要更大的堆。目前大约有1024 MB

android - 如何将特定类放入主 DEX 文件?

android - 我正在尝试在android studio中使用FFmpeg lib在视频上添加文本和图像

android - 如何获取谷歌联系人而不是 gmail 联系人?

android - 将字节码转换为 dex Android studio 时出错

android - Android Studio Gradle错误 “Multiple dex files define…”