[2013-12-04 01:52:36 - Dex Loader] Unable to execute dex: java.nio.BufferOverflowException. Check the Eclipse log for stack trace.[2013-12-04 01:52:36 - Examples_04_01] Conversion to Dalvik format failed: Unable to execute dex: java.nio.BufferOverflowException. Check the Eclipse log for stack trace.
当使用较新版本的ADT运行旧版本开发的android项目,便出现如上提示。
解决以上问题有以下几种方法:
方法一:
Eclipse->Project->去掉Build Automatically->Clear ->Build Project->Build Automatically,关闭Eclipse,再打开(我的问题不是出在这)
方法二:
更新ADT插件,删除workspace目录下的.metadata目录,(这个解决方案没有尝试,因为在开发过程中,我只是更换了一个jar包而出现的错误,而且开发环境不能连网络,不方便尝试)
方法三:
在你的项目下某个文件夹中有一个后缀为*.APK的文件,删掉,重启Eclipse即可。
方法四:
原因是有重复的。jar被引用,可以查看你的build
path,尤其是Android Dependencies一定有重复引入的.jar包,解决的方法是在libs删除重复的jar即可。
方法五:
在项目中,有一个类的包名和引用的jar包中的类和包名一致,我用的是jar包中的类,所以工程中的这个类就是重复引用的,删除工程中重复引用的类后,成功打包启动。希望各位同学注意这个小问题。
方法六:
通过 eclipse IDE 工具的 project -->clean 运行后,可以执行mvn install命令通过 IntelliJ IDEA 工具的 Bulid-->Make Project ,Rebulid Projdec 运行后,可以执行mvn clean ,package命令