Java中对位置的内存访问无效

Dav*_*les 16 java jvm

我一年来一直致力于Java项目.我的代码已经好几个月了.几天前,我将Java SDK升级到Mac上的最新版本1.6.0_26(Snow Leopard 10.6.8).升级后,发生了一些非常奇怪的事情.当我运行一些类时,我收到此错误:

位置0x202 rip = 0x202的内存访问无效

但是,如果我用-Xint(解释)运行它们,它们可以工作,但速度慢但工作正常.我在使用按位运算符(用于游戏奥赛罗的位板)的类中得到了这个问题.我不能在这里放任何代码,因为我没有得到错误,异常或类似的东西.我只是得到了令人讨厌的消息.

代码在没有-Xint的情况下运行是否正常但是它可以使用吗?我该怎么办?

提前致谢

Ste*_*n C 4

当 JVM 开始像这样崩溃时,就表明有东西破坏了 JVM 的执行模型。

您的应用程序包含任何本机代码吗?它是否使用任何带有本机代码组件的第三方库?如果两者都不是,那么这很可能是 JVM 的 Apple 端口中的错误。它可能是 JIT 编译器错误,或者某些 JVM 本机代码库中的错误。

对于这样的错误你能做什么?

不是很多。

  • 通过逐步削减部分来减少您的应用程序,直到您有一个小测试用例来显示问题。
  • 根据测试用例,看看是否有一些经验方法可以避免该问题。
  • 使用测试用例向 Apple 提交错误报告。