我在尝试运行Android项目时遇到异常。
转换为Dalvik格式失败:无法执行dex:java.nio.BufferOverflowException
目前我正在使用ADT 22.3版。我的项目目标是API级别15。我尝试在Android工具中添加支持库,但问题未解决。
答案 0 :(得分:47)
关键是将target=android-19
从project.properties
和android:targetSdkVersion="19"
设置为19.这对我有用。
答案 1 :(得分:14)
这是一个很大的混乱......以下方式为我做了诀窍......
在eclipse中右键单击您的项目 - > Android工具 - >添加支持库
然后点击Accept License
,然后点击install
。
答案 2 :(得分:5)
我遇到了同样的问题而且我使用了这些方法
1-降级到Android SDK构建工具18.1.1
2-添加支持库。 (如果它已经存在,请尝试删除它并再次添加,右键单击项目 - > Android工具 - >添加支持库)
答案 3 :(得分:2)
上面的链接被破坏但提供了有效的解决方案。更新了链接:http://techlovejump.in/how-to-solve-unable-to-execute-dex-java-nio-bufferoverflowexception-check-the-eclipse-log-for-stack-trace/
答案 4 :(得分:2)
这是与Android dex gives a BufferOverflowException when building相同的问题吗?更新到19.0.1构建工具(如链接帖子中所述)为我解决了这个问题。
答案 5 :(得分:1)
浏览您的eclipse文件夹 - > 打开Eclipse文件夹 打开eclipse.ini 将 -Xms40m和-Xmx384m更改为-Xms512m和-Xmx512m
点击保存
答案 6 :(得分:0)
无需降级。 您可以通过编辑清单文件或项目属性来修复错误。添加以下行。
sdk.build.tools=18.1.1
用清单中的targetsdk替换18.1.1。
答案 7 :(得分:0)
我更新了project.properties文件。我把sdk.build.tools = 19.0.1放在属性文件中。并将最低SDK版本设置为14
答案 8 :(得分:0)
当我的模拟器设置了较高的Ram值时,它发生在我身上,我将模拟器RAM值更改为768,然后就可以了
答案 9 :(得分:0)
我在项目中使用Sherlock ActionBar库时遇到了这个问题。 您可以执行以下步骤,这对我有用。
希望能帮助你。
答案 10 :(得分:0)
我的IDE中有冗余库导致问题,其他解决方案都没有为我工作