android - 无法执行dex : Multiple dex files define Lorg/simpleframework/xml/Attribute

标签 android dex

我正在一个应用程序中实现用于拨号目的的C2Call库,并且C2Call库有很多jar文件,simple-xml-2.6.7.jar是C2Call库的一部分。 simple-xml-2.6.7.jar 在编译时在我的应用程序中给我一个错误:

[2014-08-21 11:09:56 - Dex Loader] Unable to execute dex: Multiple dex files define Lorg/simpleframework/xml/Attribute;
[2014-08-21 11:09:56 ] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lorg/simpleframework/xml/Attribute;

我已经进行了很多冲浪来解决这个问题,但我找不到解决这个问题的解决方案。

希望您能给出解决这个问题的方法。

谢谢。

最佳答案

如果您在两个不同的 jar 中导入相同的库,则会出现此问题。您需要仔细检查所有 jar 并尝试找出导入相同库的 jar。如果您有源代码,那么您可以轻松地再次构建 jar,而无需添加库。

另一件事是尝试将其分解为多个 dex 文件。请从这里阅读

http://android-developers.blogspot.co.il/2011/07/custom-class-loading-in-dalvik.html

“大型应用程序可以包含超过 64K 的方法引用,这是 dex 文件中支持的最大数量。为了解决此限制,开发人员可以将部分程序划分为多个辅助 dex 文件,并在运行时加载它们”

我认为您有超过 64k 的方法引用,这就是导致问题的原因。让我知道它是否适合您

关于android - 无法执行dex : Multiple dex files define Lorg/simpleframework/xml/Attribute,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25419124/

相关文章:

java - 可以在不设置 Activity 的 ContentView 的情况下获取对 View 的引用

java - 替换新方法 dexlib2 失败

java - 反编译的 Dalvik 类 - 并非所有导入都可用

android - 使用 osmdroid 时不显示 map

android - returnKeyType = "next" react native 问题

Android 市场错误 : "The server could not process your apk. Try again."

android - ArrayAdapter - 我做错了什么?

android - dex格式上还不清楚

java - Android APK 无法安装在设备上

android - dexed 文件是否在系统中持久存在?重启设备后是否存在?如果是的话存放在哪里?