【问题标题】:Android emulator crash: "Dx bad class file magic" / ClassNotFoundException on startup?Android 模拟器崩溃:启动时出现“Dx bad class file magic”/ClassNotFoundException?
【发布时间】:2012-01-05 20:04:06
【问题描述】:

我正在使用 android 开发游戏,但遇到了问题。我的游戏在我的另一台计算机上完全运行,所以我将项目提交给 svn 服务器,以便在我的新 windows 7 64 位计算机上使用。我在我的新电脑上用 Eclipse 颠覆了它。显然我在构建路径方面遇到了一些问题,所以我修复了这些问题并且项目没有错误。当我在运行 android 2.3.3 的模拟器上运行它时,它在启动时崩溃,主活动出现 ClassNotFoundException。我的清单中的所有内容都是正确的。
当我运行它时,如果我刚刚清理它,我会在每个类文件上收到Dx bad class file magic (cafebabe) or version (0033.0000) 的警告(否则我不会收到这些警告),我认为这可能是它在启动时崩溃的原因。我到处寻找并尝试了不同的东西,但没有。
另一个需要注意的重要事情是,我能够在我的新计算机上从 eclipse 中的示例创建一个 android 项目,并且一切运行良好。所以出于某种原因 svn 搞砸了?感谢您的帮助,如果需要更多信息,请告诉我。

编辑:忘了提到我在 svn 中有另一个项目,我将其用作框架,并且游戏引用了该项目。也许他们正在编译为不同的 java 版本?

【问题讨论】:

  • 确保您在 Manifest 文件中定义的主要活动包和您签出的包相同。
  • 尝试清理并重建项目。
  • 可能与stackoverflow.com/questions/8538891/…相关(但没有回复)
  • 我尝试清洁,但没有奏效。我尝试将编译器更改为 1.6(它在旧计算机上为 1.6),但没有奏效。也许我应该尝试从 svn 服务器中删除 .class 文件?
  • 多亏了剩下的 cmets 才弄明白!就像我在编辑中提到的那样,我的游戏项目引用了我的另一个框架项目。事实证明,该框架上的 sdk 级别是 1.7,而不是应有的 1.6,即使游戏项目是 1.6。由于某种原因,android 没有检测到这一点,它把一切都搞砸了。在我将每个项目都更改为 1.6 并清理了每个项目之后,它都工作了!谢谢!

标签: android runtime-error classnotfoundexception


【解决方案1】:

感谢留下的 cmets!就像我在编辑中提到的那样,我的游戏项目引用了我的另一个框架项目。事实证明,该框架上的 sdk 级别是 1.7,而不是应有的 1.6,即使游戏项目是 1.6。由于某种原因,android 没有检测到这一点,它把一切都搞砸了。在我将每个项目都更改为 1.6 并清理了它工作的每个项目之后!谢谢!

【讨论】:

    猜你喜欢
    • 2012-09-06
    • 1970-01-01
    • 2017-01-27
    • 1970-01-01
    • 2021-07-19
    • 2013-04-28
    • 2013-08-01
    • 2020-07-01
    • 2016-02-21
    相关资源
    最近更新 更多