【发布时间】:2012-01-09 20:54:51
【问题描述】:
我在我的应用程序中使用 JME,有时它会崩溃并显示以下消息:
#
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x3d601ad7, pid=168, tid=4012
#
# JRE version: 6.0_29-b11
# Java VM: Java HotSpot(TM) Client VM (20.4-b02 mixed mode, sharing windows-x86)
# Problematic frame:
# C [ig4dev32.dll+0x21ad7]
#
# An error report file with more information is saved as:
# C:\...\hs_err_pid168.log
#
# If you would like to submit a bug report, please visit:
# http://java.sun.com/webapps/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
日志文件可以通过这个链接找到:http://sergpank.heliohost.org/log.html
最奇怪的是,在我的情况下,我只会崩溃构建代码,但是当我从 Eclipse 启动它时,我的机器上一切正常。在带有 AMD 视频适配器的机器上没有任何崩溃。在其他带有 Intel 显卡的机器上,有时会在调试阶段出现崩溃。
我开始假设这是由于不正确的 ant 设置而发生的(在 startup.ini 中设置了以下路径:-Djava.library.path=lib/dlls,因此可以看到项目的 dlls)。但仍然无法理解为什么它在 AMD 上几乎可以完美运行而在 Intel 上崩溃。
也许它与蚂蚁有关,我必须将dll添加到manfest...查看文档并找不到如何完成它。
解决方案:
在 64 位系统上必须使用相应的 JVM(64 位),然后什么都不会崩溃 =))
【问题讨论】:
-
鉴于您没有在其他硬件上遇到崩溃,问题几乎肯定与驱动程序有关,这意味着答案的要点归结为无用但准确的“是的,那是英特尔给你的司机”。确保您的驱动程序是最新的,然后重试。如果您发布生成的 hs_err_pid168.log 文件的堆栈跟踪部分(打开它,它只是一个文本文件),这至少可能有助于确定哪些调用导致了崩溃。
-
日志看起来像这样:sergpank.heliohost.org/log.html希望它说明了这个问题 =)
标签: java opengl lwjgl jmonkeyengine graphical-programming