我试图用OpenSAML使用Eclipse的Android项目。 我已经在构建路径中添加了所有所需的jar文件。 现在,当我运行程序为Android应用程序下面的错误显示出来:
[2012-11-18 11:52:59 - Dex Loader] Unable to execute dex: Cannot merge new index 67075 into a non-jumbo instruction!
[2012-11-18 11:52:59 - MyTestProgram] Conversion to Dalvik format failed: Unable to execute dex: Cannot merge new index 67075 into a non-jumbo instruction!
我GOOGLE了一下,但一无所获。 还有什么比这个错误是什么意思?
一个解决方案,我发现了它的工作对我来说是增加dex.force.jumbo=true
我project.properties
。
:这是在指出https://groups.google.com/forum/?fromgroups=#!topic/adt-dev/tuLXN9GkVas
这是假设你正在运行ADT 21这个功能是不是在以前的版本。
如果使用gradle这个构建,只需添加dexOptions到的build.gradle启用巨型模式:
android {
dexOptions {
jumboMode = true
}
}
记住你的新大楼前运行“gradle这个干净”。
我有同样的问题,但我的IDE是IntelliJ IDEA的13.在该版本中, dex.force.jumbo
在指令project.properties
文件将被忽略。
要启用它,只需转到设置| 编译器| Android的DX和选择强制巨型模式选项。
希望它可以帮助(这是唯一的SO-相关的问题,我已经能够找到)。
只需添加jumboMode=true
为我的gradle这个编译没有工作。 但是这个工作(来自泽维尔的ADT-dev的组作为在这方面提出了错误的回复中引用):
“尝试手动删除所有构建的文件夹和重新建造,确保dexOptions.jumboMode设置为true的项目?
还有的地方根本项目的构建没有在清洁任务删除的问题,这包含了预dexed库的一些信息“。
添加一些说明:
这发生在Eclipse中尝试逐步建立,当变化增加了应用程序的字符串常量的数量。 原来DEX有非巨型的指令,而这被合并到它有巨型说明新的地塞米松。 做一个干净的将表明,当你从头开始构建工作。
只要在应用程序中的字符串数单调递增,增量构建将工作向前发展。
我有同样的问题,但在我的情况下,“dex.force.jumbo =真正的”命令不会解决问题。 我尝试更新JDK和JRE,并解决问题。
希望这回答帮助
文章来源: Android Error in Eclipse: “Unable to execute dex: Cannot merge new index 65799 into a non-jumbo instruction!”