我知道有一些类似的问题,但没有任何解决方案对我有帮助。 当我尝试访问(现有)类时,我得到一个java.lang.NoClassDefFoundError 在我的项目组的自创.jar中。
这个.jar在普通的javaProject中运行良好,但不适用于Android。 但是这个.jar的旧版本在Android上运行良好。
我正在使用Eclipse + Android开发工具开发 - 插件(版本21) 我已将.jar放在Project_Home / libs文件夹中。 编译时没有错误。
在抛出异常之前,有一些“dalvikvm - 找不到类......引用......”错误。
我认为,Java版本可能存在问题,因为我们的项目组最近开始使用Java 7,但我不确定并且不知道如何解决它。
非常感谢你的帮助。
答案 0 :(得分:0)
将lib重命名为libs并更新构建路径,然后重试
答案 1 :(得分:0)
确保您的课程名称与Android中已有的课程名称不同。在构建包时,由于“优化”,省略了具有相同名称的类。
Android库大多是针对1.5编译的。并非所有库都存在于Android中。您的软件包可能依赖于系统中不存在的其他库。
答案 2 :(得分:0)
我认为如果项目编译正常,那么我们可以排除复制或java buildpath中的任何错误。我得到此错误的唯一另一次是我的导入错误的代码。我建议你重新检查你的导入并重新创建R.java文件。
答案 3 :(得分:0)
通常我不想回答我自己的问题,但我希望它会对某人有所帮助 我没有看到其他警告(不是在Logcat中,它在控制台中):
“Dx坏类文件魔术(cafebabe)或版本(0033.0000)”
我在其他Stackoverflow question中找到了此警告。 我用HexEditor从不工作的.jar中打开了一个类文件 并将Major-Version-Byte更改为0x32并且它有效。 我知道这不是一个解决方案,因为类中可能有Java 7的功能, 所以类文件不再起作用,但它证明它是Java版本的问题