本机代码中的 JVM 致命错误,不知道该怎么办

发布于 2024-12-08 08:15:35 字数 18796 浏览 0 评论 0原文

我正在使用 LWJGL 在 Java 中开发游戏。除了主游戏之外,我还开发了一些基于 Swing 的应用程序(启动器、配置编辑器和地图编辑器)。

当我运行启动器时,有时(大约 10% 的时间)会发生致命的 JVM 崩溃。这很奇怪 - 我可以在几秒钟后运行该程序并且一切正常。我的编译错误或警告为零,并且当程序运行时,它完全可以正常工作。

当我运行 LWJGL 游戏时,我没有收到错误消息,仅当我首先运行启动器时才出现该错误。我用来初始化启动器的过程是:

  1. 告诉 swing 使用 Substance Look and Feel 进行窗口装饰。
  2. 在用户计算机上设置一个目录来存储文件(保存游戏、配置等)。
  3. 检查是否需要将LWJGL所需的库提取到前面提到的目录中;如果是这样,请提取它们。然后,设置 JVM 的 LWJGL 路径属性(这允许 LWJGL 方法运行)。 (这已经经过了广泛的自身测试;我不知道它是否会以某种方式干扰物质 LaF。我不希望它会这样。)
  4. 初始化启动器窗口。它有一个中心图像和一系列 JButton。
  5. 使用 JLayer 开始循环播放背景音轨以营造氛围。在我实现此功能之前就会出现此错误,并且添加它并没有改变任何内容。

我得到的错误如下:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000007fefd800c7b, pid=6128, tid=4364
#
# JRE version: 6.0_27-b07
# Java VM: Java HotSpot(TM) 64-Bit Server VM (20.2-b06 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# C  [ole32.dll+0x10c7b]
#
# An error report file with more information is saved as:
# J:\Development\workspace\Crypt Utils\hs_err_pid6128.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.
#

然后,错误日志文件:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000007fefd800c7b, pid=6128, tid=4364
#
# JRE version: 6.0_27-b07
# Java VM: Java HotSpot(TM) 64-Bit Server VM (20.2-b06 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# C  [ole32.dll+0x10c7b]
#
# 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.
#

---------------  T H R E A D  ---------------

Current thread (0x000000000713d000):  JavaThread "AWT-EventQueue-0" [_thread_in_native, id=4364, stack(0x0000000007e30000,0x0000000007f30000)]

siginfo: ExceptionCode=0xc0000005, writing address 0x0000000000000038

Registers:
RAX=0x0000000000000000, RBX=0x000000000b933c70, RCX=0x000000000000110c, RDX=0x000007fefd996620
RSP=0x0000000007f2dfa0, RBP=0x000000000026dc90, RSI=0x0000000000000000, RDI=0x000000000b933c70
R8 =0x00000000000003d4, R9 =0x000007fefd977f18, R10=0x0000000000000000, R11=0x0000000007f2dec0
R12=0x0000000000000000, R13=0x000000000b90a3c0, R14=0x0000000000000000, R15=0x0000000000000000
RIP=0x000007fefd800c7b, EFLAGS=0x0000000000010246

Top of Stack: (sp=0x0000000007f2dfa0)
0x0000000007f2dfa0:   000000000b933c70 0000000000000000
0x0000000007f2dfb0:   0000000000000000 000007fefd81311b
0x0000000007f2dfc0:   0000000000000000 0000000007f2e050
0x0000000007f2dfd0:   000017f000001000 d0b221343c39b318
0x0000000007f2dfe0:   000081de6b223eb8 000007fefd813032
0x0000000007f2dff0:   0000000000000001 00000000070e9c18
0x0000000007f2e000:   0000000000000000 000000000026dc90
0x0000000007f2e010:   000000000713d1d0 000007fefd801225
0x0000000007f2e020:   0000000007f2e080 000000000026dc90
0x0000000007f2e030:   0000000000000000 000000000000008c
0x0000000007f2e040:   000000000c797be0 000007fefd963135
0x0000000007f2e050:   000000000026dc90 000000000713ca28
0x0000000007f2e060:   0000000006697d00 000007fefd0f8c12
0x0000000007f2e070:   000000000c797be0 000007fefd91de9d
0x0000000007f2e080:   000000000026dc90 00000000070e9c18
0x0000000007f2e090:   0000000000000018 0000000000000514 

Instructions: (pc=0x000007fefd800c7b)
0x000007fefd800c5b:   60 1c 00 41 b8 d4 03 00 00 e8 47 82 01 00 85 f6
0x000007fefd800c6b:   78 2b f3 0f 6f 44 24 30 48 8b 45 18 4c 89 6d 20
0x000007fefd800c7b:   f3 0f 7f 40 30 f6 45 0c 01 75 12 48 8b cd e8 be
0x000007fefd800c8b:   fa ff ff 8b f0 85 c0 78 04 83 4d 0c 01 48 8b cd 


Register to memory mapping:

RAX=0x0000000000000000 is an unknown value
RBX=0x000000000b933c70 is an unknown value
RCX=0x000000000000110c is an unknown value
RDX=0x000007fefd996620 is an unknown value
RSP=0x0000000007f2dfa0 is pointing into the stack for thread: 0x000000000713d000
RBP=0x000000000026dc90 is an unknown value
RSI=0x0000000000000000 is an unknown value
RDI=0x000000000b933c70 is an unknown value
R8 =0x00000000000003d4 is an unknown value
R9 =0x000007fefd977f18 is an unknown value
R10=0x0000000000000000 is an unknown value
R11=0x0000000007f2dec0 is pointing into the stack for thread: 0x000000000713d000
R12=0x0000000000000000 is an unknown value
R13=0x000000000b90a3c0 is an unknown value
R14=0x0000000000000000 is an unknown value
R15=0x0000000000000000 is an unknown value


Stack: [0x0000000007e30000,0x0000000007f30000],  sp=0x0000000007f2dfa0,  free space=1015k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [ole32.dll+0x10c7b]  CLSIDFromString+0x5fb

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
    sun.awt.windows.WComponentPeer.addNativeDropTarget()J+0
    sun.awt.windows.WComponentPeer.addDropTarget(Ljava/awt/dnd/DropTarget;)V+9
    java.awt.dnd.DropTarget.addNotify(Ljava/awt/peer/ComponentPeer;)V+60
    java.awt.Component.addNotify()V+297
    java.awt.Container.addNotify()V+8
    javax.swing.JComponent.addNotify()V+1
    java.awt.Container.addNotify()V+61
    javax.swing.JComponent.addNotify()V+1
    java.awt.Container.addNotify()V+61
    javax.swing.JComponent.addNotify()V+1
    javax.swing.JMenuBar.addNotify()V+1
    java.awt.Container.addNotify()V+61
    javax.swing.JComponent.addNotify()V+1
    org.pushingpixels.substance.internal.utils.SubstanceTitlePane.addNotify()V+1
    java.awt.Container.addNotify()V+61
    javax.swing.JComponent.addNotify()V+1
    java.awt.Container.addNotify()V+61
    javax.swing.JComponent.addNotify()V+1
    javax.swing.JRootPane.addNotify()V+5
    java.awt.Container.addNotify()V+61
    java.awt.Window.addNotify()V+73
    java.awt.Frame.addNotify()V+70
    java.awt.Window.pack()V+28
    gui.launcher.LauncherWindow.()V+156
    main.Crypt.runLauncher()V+28
    main.Crypt$1.run()V+0
    java.awt.event.InvocationEvent.dispatch()V+47
    java.awt.EventQueue.dispatchEventImpl(Ljava/awt/AWTEvent;Ljava/lang/Object;)V+21
    java.awt.EventQueue.access$000(Ljava/awt/EventQueue;Ljava/awt/AWTEvent;Ljava/lang/Object;)V+3
    java.awt.EventQueue$1.run()Ljava/lang/Void;+12
    java.awt.EventQueue$1.run()Ljava/lang/Object;+1
v  ~StubRoutines::call_stub
    java.security.AccessController.doPrivileged(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;)Ljava/lang/Object;+0
    java.security.AccessControlContext$1.doIntersectionPrivilege(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;Ljava/security/AccessControlContext;)Ljava/lang/Object;+28
    java.awt.EventQueue.dispatchEvent(Ljava/awt/AWTEvent;)V+46
    java.awt.EventDispatchThread.pumpOneEventForFilters(I)Z+204
    java.awt.EventDispatchThread.pumpEventsForFilter(ILjava/awt/Conditional;Ljava/awt/EventFilter;)V+30
    java.awt.EventDispatchThread.pumpEventsForHierarchy(ILjava/awt/Conditional;Ljava/awt/Component;)V+11
    java.awt.EventDispatchThread.pumpEvents(ILjava/awt/Conditional;)V+4
    java.awt.EventDispatchThread.pumpEvents(Ljava/awt/Conditional;)V+3
    java.awt.EventDispatchThread.run()V+9
v  ~StubRoutines::call_stub

---------------  P R O C E S S  ---------------

Java Threads: ( => current thread )
  0x0000000007309000 JavaThread "Substance heap status" daemon [_thread_blocked, id=5732, stack(0x000000000c000000,0x000000000c100000)]
  0x000000000737e000 JavaThread "Headspace mixer frame proc thread" daemon [_thread_blocked, id=5520, stack(0x000000000bd00000,0x000000000be00000)]
  0x00000000072a2800 JavaThread "Java Sound Event Dispatcher" daemon [_thread_blocked, id=2956, stack(0x000000000b700000,0x000000000b800000)]
  0x00000000071dc800 JavaThread "Thread-3" [_thread_in_native, id=4104, stack(0x00000000082b0000,0x00000000083b0000)]
  0x00000000003db800 JavaThread "DestroyJavaVM" [_thread_blocked, id=5600, stack(0x0000000002570000,0x0000000002670000)]
=>0x000000000713d000 JavaThread "AWT-EventQueue-0" [_thread_in_native, id=4364, stack(0x0000000007e30000,0x0000000007f30000)]
  0x00000000067af800 JavaThread "AWT-Windows" daemon [_thread_in_native, id=5760, stack(0x0000000007830000,0x0000000007930000)]
  0x00000000067ae800 JavaThread "AWT-Shutdown" [_thread_blocked, id=2600, stack(0x0000000007730000,0x0000000007830000)]
  0x00000000066ea800 JavaThread "Java2D Disposer" daemon [_thread_blocked, id=4244, stack(0x00000000074e0000,0x00000000075e0000)]
  0x0000000006684000 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=5196, stack(0x0000000006d10000,0x0000000006e10000)]
  0x0000000006681000 JavaThread "C2 CompilerThread1" daemon [_thread_blocked, id=4192, stack(0x0000000006c10000,0x0000000006d10000)]
  0x000000000666e000 JavaThread "C2 CompilerThread0" daemon [_thread_blocked, id=4260, stack(0x0000000006b10000,0x0000000006c10000)]
  0x000000000666b000 JavaThread "Attach Listener" daemon [_thread_blocked, id=5008, stack(0x0000000006a10000,0x0000000006b10000)]
  0x0000000006666000 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=4032, stack(0x0000000006910000,0x0000000006a10000)]
  0x000000000064b800 JavaThread "Finalizer" daemon [_thread_blocked, id=1132, stack(0x0000000006810000,0x0000000006910000)]
  0x0000000000649000 JavaThread "Reference Handler" daemon [_thread_blocked, id=5336, stack(0x0000000006510000,0x0000000006610000)]

Other Threads:
  0x0000000000641000 VMThread [stack: 0x0000000006410000,0x0000000006510000] [id=3820]
  0x0000000006697000 WatcherThread [stack: 0x0000000006e10000,0x0000000006f10000] [id=5156]

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread: None

Heap
 PSYoungGen      total 19136K, used 15506K [0x00000000eaab0000, 0x00000000ec000000, 0x0000000100000000)
  eden space 16448K, 94% used [0x00000000eaab0000,0x00000000eb9d4b98,0x00000000ebac0000)
  from space 2688K, 0% used [0x00000000ebd60000,0x00000000ebd60000,0x00000000ec000000)
  to   space 2688K, 0% used [0x00000000ebac0000,0x00000000ebac0000,0x00000000ebd60000)
 PSOldGen        total 43712K, used 0K [0x00000000c0000000, 0x00000000c2ab0000, 0x00000000eaab0000)
  object space 43712K, 0% used [0x00000000c0000000,0x00000000c0000000,0x00000000c2ab0000)
 PSPermGen       total 21248K, used 15942K [0x00000000bae00000, 0x00000000bc2c0000, 0x00000000c0000000)
  object space 21248K, 75% used [0x00000000bae00000,0x00000000bbd91870,0x00000000bc2c0000)

Code Cache  [0x0000000002670000, 0x00000000028e0000, 0x0000000005670000)
 total_blobs=470 nmethods=39 adapters=385 free_code_cache=49729536 largest_free_block=6336

Dynamic libraries:
0x0000000000400000 - 0x000000000042e000     C:\Program Files\Java\jre6\bin\javaw.exe
0x00000000770f0000 - 0x0000000077299000     C:\Windows\SYSTEM32\ntdll.dll
0x0000000076ed0000 - 0x0000000076fef000     C:\Windows\system32\kernel32.dll
0x000007fefd0f0000 - 0x000007fefd15c000     C:\Windows\system32\KERNELBASE.dll
0x0000000074de0000 - 0x0000000074e1f000     C:\Program Files\AVAST Software\Avast\snxhk64.dll
0x000007fefdde0000 - 0x000007fefdebb000     C:\Windows\system32\ADVAPI32.dll
0x000007fefd410000 - 0x000007fefd4af000     C:\Windows\system32\msvcrt.dll
0x000007fefd4b0000 - 0x000007fefd4cf000     C:\Windows\SYSTEM32\sechost.dll
0x000007fefef90000 - 0x000007feff0bd000     C:\Windows\system32\RPCRT4.dll
0x0000000076ff0000 - 0x00000000770ea000     C:\Windows\system32\USER32.dll
0x000007fefdec0000 - 0x000007fefdf27000     C:\Windows\system32\GDI32.dll
0x000007fefee50000 - 0x000007fefee5e000     C:\Windows\system32\LPK.dll
0x000007feff0c0000 - 0x000007feff189000     C:\Windows\system32\USP10.dll
0x000007fefe090000 - 0x000007fefe0be000     C:\Windows\system32\IMM32.DLL
0x000007fefd4d0000 - 0x000007fefd5d9000     C:\Windows\system32\MSCTF.dll
0x000000006d7f0000 - 0x000000006dfa8000     C:\Program Files\Java\jre6\bin\server\jvm.dll
0x000007fefa980000 - 0x000007fefa9bb000     C:\Windows\system32\WINMM.dll
0x000000006d760000 - 0x000000006d76e000     C:\Program Files\Java\jre6\bin\verify.dll
0x000000006d3b0000 - 0x000000006d3d7000     C:\Program Files\Java\jre6\bin\java.dll
0x000000006d7b0000 - 0x000000006d7c2000     C:\Program Files\Java\jre6\bin\zip.dll
0x000000006d000000 - 0x000000006d1c3000     C:\Program Files\Java\jre6\bin\awt.dll
0x000007fefa620000 - 0x000007fefa691000     C:\Windows\system32\WINSPOOL.DRV
0x000007fefd7f0000 - 0x000007fefd9f3000     C:\Windows\system32\ole32.dll
0x000007fefe0c0000 - 0x000007fefee48000     C:\Windows\system32\SHELL32.dll
0x000007fefef10000 - 0x000007fefef81000     C:\Windows\system32\SHLWAPI.dll
0x000007fefbaf0000 - 0x000007fefbce4000     C:\Windows\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.7601.17514_none_fa396087175ac9ac\COMCTL32.dll
0x000007fefb3b0000 - 0x000007fefb3c8000     C:\Windows\system32\DWMAPI.DLL
0x000007fefb780000 - 0x000007fefb7d6000     C:\Windows\system32\uxtheme.dll
0x000007fef93b0000 - 0x000007fef942f000     C:\Program Files\Common Files\microsoft shared\ink\tiptsf.dll
0x000007fefd5e0000 - 0x000007fefd6b7000     C:\Windows\system32\OLEAUT32.dll
0x000007fefc180000 - 0x000007fefc18c000     C:\Windows\system32\version.dll
0x000007fefcf70000 - 0x000007fefcf7f000     C:\Windows\system32\CRYPTBASE.dll
0x000000006d2a0000 - 0x000000006d306000     C:\Program Files\Java\jre6\bin\fontmanager.dll
0x000000006d600000 - 0x000000006d617000     C:\Program Files\Java\jre6\bin\net.dll
0x000007fefee60000 - 0x000007fefeead000     C:\Windows\system32\WS2_32.dll
0x000007feff210000 - 0x000007feff218000     C:\Windows\system32\NSI.dll
0x000007fefc870000 - 0x000007fefc8c5000     C:\Windows\system32\mswsock.dll
0x000007fefc860000 - 0x000007fefc867000     C:\Windows\System32\wship6.dll
0x000000006d620000 - 0x000000006d62b000     C:\Program Files\Java\jre6\bin\nio.dll
0x0000000180000000 - 0x0000000180050000     C:\Users\Chris\AppData\Roaming\jRabbit Data\LWJGL Natives\lwjgl64.dll
0x000007fef1550000 - 0x000007fef166d000     C:\Windows\system32\OPENGL32.dll
0x000007fef47c0000 - 0x000007fef47ed000     C:\Windows\system32\GLU32.dll
0x000007fef1210000 - 0x000007fef1301000     C:\Windows\system32\DDRAW.dll
0x000007fef8090000 - 0x000007fef8098000     C:\Windows\system32\DCIMAN32.dll
0x000007feff220000 - 0x000007feff3f7000     C:\Windows\system32\SETUPAPI.dll
0x000007fefd160000 - 0x000007fefd196000     C:\Windows\system32\CFGMGR32.dll
0x000007fefd3b0000 - 0x000007fefd3ca000     C:\Windows\system32\DEVOBJ.dll
0x000007fefa2a0000 - 0x000007fefa49f000     C:\Windows\system32\d3d9.dll
0x000007fefa290000 - 0x000007fefa297000     C:\Windows\system32\d3d8thk.dll
0x000007feed900000 - 0x000007feee777000     C:\Windows\system32\nvd3dumx.dll
0x000007fefb860000 - 0x000007fefb88c000     C:\Windows\system32\powrprof.dll
0x000000006d510000 - 0x000000006d53e000     C:\Program Files\Java\jre6\bin\jsound.dll
0x000007fefb730000 - 0x000007fefb77b000     C:\Windows\system32\MMDevAPI.DLL
0x000007fefb940000 - 0x000007fefba6c000     C:\Windows\system32\PROPSYS.dll
0x000007fefa5e0000 - 0x000007fefa61b000     C:\Windows\system32\wdmaud.drv
0x0000000074a00000 - 0x0000000074a06000     C:\Windows\system32\ksuser.dll
0x000007fefbae0000 - 0x000007fefbae9000     C:\Windows\system32\AVRT.dll
0x000007fefa590000 - 0x000007fefa5df000     C:\Windows\system32\AUDIOSES.DLL
0x000007fefa4e0000 - 0x000007fefa4ea000     C:\Windows\system32\msacm32.drv
0x000007fefa4c0000 - 0x000007fefa4d8000     C:\Windows\system32\MSACM32.dll
0x000007fefa4a0000 - 0x000007fefa4a9000     C:\Windows\system32\midimap.dll
0x000000006d210000 - 0x000000006d238000     C:\Program Files\Java\jre6\bin\dcpr.dll
0x000007fefdf30000 - 0x000007fefdfc9000     C:\Windows\system32\CLBCatQ.DLL
0x000007fefcb00000 - 0x000007fefcb17000     C:\Windows\system32\CRYPTSP.dll
0x000007fefc5d0000 - 0x000007fefc617000     C:\Windows\system32\rsaenh.dll
0x000007fefc390000 - 0x000007fefc3ae000     C:\Windows\system32\USERENV.dll
0x000007fefcfa0000 - 0x000007fefcfaf000     C:\Windows\system32\profapi.dll
0x000007fefad70000 - 0x000007fefad85000     C:\Windows\system32\NLAapi.dll
0x000007fefb220000 - 0x000007fefb235000     C:\Windows\system32\napinsp.dll
0x000007fefb200000 - 0x000007fefb219000     C:\Windows\system32\pnrpnsp.dll
0x000007fefc6f0000 - 0x000007fefc74b000     C:\Windows\system32\DNSAPI.dll
0x000007fefbac0000 - 0x000007fefbacb000     C:\Windows\System32\winrnr.dll
0x0000000074700000 - 0x000000007472e000     C:\Program Files\Common Files\Microsoft Shared\Windows Live\WLIDNSP.DLL
0x00000000772b0000 - 0x00000000772b7000     C:\Windows\system32\PSAPI.DLL
0x00000000746d0000 - 0x00000000746f6000     C:\Program Files\Bonjour\mdnsNSP.dll
0x000007fef9ec0000 - 0x000007fef9ee7000     C:\Windows\system32\Iphlpapi.DLL
0x000007fef9eb0000 - 0x000007fef9ebb000     C:\Windows\system32\WINNSI.DLL
0x000007fefc250000 - 0x000007fefc257000     C:\Windows\System32\wshtcpip.dll
0x000007fefb7e0000 - 0x000007fefb7e8000     C:\Windows\system32\rasadhlp.dll
0x000007fef9cf0000 - 0x000007fef9d43000     C:\Windows\System32\fwpuclnt.dll
0x000007fefcf80000 - 0x000007fefcf94000     C:\Windows\system32\RpcRtRemote.dll

VM Arguments:
jvm_args: -Dfile.encoding=Cp1252 
java_command: main.Crypt
Launcher Type: SUN_STANDARD

Environment Variables:
CLASSPATH=.;C:\Program Files (x86)\Java\jre6\lib\ext\QTJava.zip
PATH=C:/Program Files/Java/jre6/bin/server;C:/Program Files/Java/jre6/bin;C:/Program Files/Java/jre6/lib/amd64;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\SlikSvn\bin\;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files (x86)\QuickTime\QTSystem\;C:\Program Files (x86)\Autodesk\Backburner\;J:\Development\Eclipse;
USERNAME=Chris
OS=Windows_NT
PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 15 Stepping 11, GenuineIntel

---------------  S Y S T E M  ---------------

OS: Windows 7 , 64 bit Build 7601 Service Pack 1

CPU:total 4 (4 cores per cpu, 1 threads per core) family 6 model 15 stepping 11, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3

Memory: 4k page, physical 4193464k(2246544k free), swap 8385080k(6086692k free)

vm_info: Java HotSpot(TM) 64-Bit Server VM (20.2-b06) for windows-amd64 JRE (1.6.0_27-b07), built on Jul 19 2011 01:08:22 by "java_re" with MS VC++ 8.0 (VS2005)

time: Mon Oct 03 09:29:15 2011
elapsed time: 1 seconds

从 Stack Overflow 上看,这似乎偶尔与内存设置有关。这里是这样吗?我已经将 Eclipse 设置为使用大量内存来运行;另外,我只是创建一个带有一些组件的小型 JFrame,并初始化 LWJGL 库。这并不占用太多内存。

I'm developing a game in Java using LWJGL. Along with the main game, I'm developing a few Swing-based applications (a launcher, a configuration editor, and a map editor).

When I run the launcher, I sometimes (about 10% of the time) get a fatal JVM crash. It's very strange - I can run the program a few seconds later and everything works. I have zero compilation errors or warnings, and when the program does work, it's completely functional.

I haven't gotten the error when I run my LWJGL game, it's only when I run the launcher first. The process I use to initialize the launcher is:

  1. Tell swing to use a Substance Look and Feel for window decoration.
  2. Setup a directory on the user's computer in which to store files (save games, configurations, etc).
  3. Check if extracting the LWJGL required libraries to the previously mentioned directory is necessary; if so, extract them. Then, set the LWJGL path property of the JVM (this allows LWJGL methods to function). (This has been extensively tested by itself; I don't know if it would somehow interfere with the Substance LaF. I wouldn't expect it to.)
  4. Initialize the launcher window. It has a central image and a series of JButtons.
  5. Begin looping a background soundtrack for ambiance using JLayer. This error would occur before I implemented this feature, and adding it did not change anything.

The error I get is as follows:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000007fefd800c7b, pid=6128, tid=4364
#
# JRE version: 6.0_27-b07
# Java VM: Java HotSpot(TM) 64-Bit Server VM (20.2-b06 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# C  [ole32.dll+0x10c7b]
#
# An error report file with more information is saved as:
# J:\Development\workspace\Crypt Utils\hs_err_pid6128.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.
#

Then, the error log file:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000007fefd800c7b, pid=6128, tid=4364
#
# JRE version: 6.0_27-b07
# Java VM: Java HotSpot(TM) 64-Bit Server VM (20.2-b06 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# C  [ole32.dll+0x10c7b]
#
# 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.
#

---------------  T H R E A D  ---------------

Current thread (0x000000000713d000):  JavaThread "AWT-EventQueue-0" [_thread_in_native, id=4364, stack(0x0000000007e30000,0x0000000007f30000)]

siginfo: ExceptionCode=0xc0000005, writing address 0x0000000000000038

Registers:
RAX=0x0000000000000000, RBX=0x000000000b933c70, RCX=0x000000000000110c, RDX=0x000007fefd996620
RSP=0x0000000007f2dfa0, RBP=0x000000000026dc90, RSI=0x0000000000000000, RDI=0x000000000b933c70
R8 =0x00000000000003d4, R9 =0x000007fefd977f18, R10=0x0000000000000000, R11=0x0000000007f2dec0
R12=0x0000000000000000, R13=0x000000000b90a3c0, R14=0x0000000000000000, R15=0x0000000000000000
RIP=0x000007fefd800c7b, EFLAGS=0x0000000000010246

Top of Stack: (sp=0x0000000007f2dfa0)
0x0000000007f2dfa0:   000000000b933c70 0000000000000000
0x0000000007f2dfb0:   0000000000000000 000007fefd81311b
0x0000000007f2dfc0:   0000000000000000 0000000007f2e050
0x0000000007f2dfd0:   000017f000001000 d0b221343c39b318
0x0000000007f2dfe0:   000081de6b223eb8 000007fefd813032
0x0000000007f2dff0:   0000000000000001 00000000070e9c18
0x0000000007f2e000:   0000000000000000 000000000026dc90
0x0000000007f2e010:   000000000713d1d0 000007fefd801225
0x0000000007f2e020:   0000000007f2e080 000000000026dc90
0x0000000007f2e030:   0000000000000000 000000000000008c
0x0000000007f2e040:   000000000c797be0 000007fefd963135
0x0000000007f2e050:   000000000026dc90 000000000713ca28
0x0000000007f2e060:   0000000006697d00 000007fefd0f8c12
0x0000000007f2e070:   000000000c797be0 000007fefd91de9d
0x0000000007f2e080:   000000000026dc90 00000000070e9c18
0x0000000007f2e090:   0000000000000018 0000000000000514 

Instructions: (pc=0x000007fefd800c7b)
0x000007fefd800c5b:   60 1c 00 41 b8 d4 03 00 00 e8 47 82 01 00 85 f6
0x000007fefd800c6b:   78 2b f3 0f 6f 44 24 30 48 8b 45 18 4c 89 6d 20
0x000007fefd800c7b:   f3 0f 7f 40 30 f6 45 0c 01 75 12 48 8b cd e8 be
0x000007fefd800c8b:   fa ff ff 8b f0 85 c0 78 04 83 4d 0c 01 48 8b cd 


Register to memory mapping:

RAX=0x0000000000000000 is an unknown value
RBX=0x000000000b933c70 is an unknown value
RCX=0x000000000000110c is an unknown value
RDX=0x000007fefd996620 is an unknown value
RSP=0x0000000007f2dfa0 is pointing into the stack for thread: 0x000000000713d000
RBP=0x000000000026dc90 is an unknown value
RSI=0x0000000000000000 is an unknown value
RDI=0x000000000b933c70 is an unknown value
R8 =0x00000000000003d4 is an unknown value
R9 =0x000007fefd977f18 is an unknown value
R10=0x0000000000000000 is an unknown value
R11=0x0000000007f2dec0 is pointing into the stack for thread: 0x000000000713d000
R12=0x0000000000000000 is an unknown value
R13=0x000000000b90a3c0 is an unknown value
R14=0x0000000000000000 is an unknown value
R15=0x0000000000000000 is an unknown value


Stack: [0x0000000007e30000,0x0000000007f30000],  sp=0x0000000007f2dfa0,  free space=1015k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [ole32.dll+0x10c7b]  CLSIDFromString+0x5fb

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
    sun.awt.windows.WComponentPeer.addNativeDropTarget()J+0
    sun.awt.windows.WComponentPeer.addDropTarget(Ljava/awt/dnd/DropTarget;)V+9
    java.awt.dnd.DropTarget.addNotify(Ljava/awt/peer/ComponentPeer;)V+60
    java.awt.Component.addNotify()V+297
    java.awt.Container.addNotify()V+8
    javax.swing.JComponent.addNotify()V+1
    java.awt.Container.addNotify()V+61
    javax.swing.JComponent.addNotify()V+1
    java.awt.Container.addNotify()V+61
    javax.swing.JComponent.addNotify()V+1
    javax.swing.JMenuBar.addNotify()V+1
    java.awt.Container.addNotify()V+61
    javax.swing.JComponent.addNotify()V+1
    org.pushingpixels.substance.internal.utils.SubstanceTitlePane.addNotify()V+1
    java.awt.Container.addNotify()V+61
    javax.swing.JComponent.addNotify()V+1
    java.awt.Container.addNotify()V+61
    javax.swing.JComponent.addNotify()V+1
    javax.swing.JRootPane.addNotify()V+5
    java.awt.Container.addNotify()V+61
    java.awt.Window.addNotify()V+73
    java.awt.Frame.addNotify()V+70
    java.awt.Window.pack()V+28
    gui.launcher.LauncherWindow.()V+156
    main.Crypt.runLauncher()V+28
    main.Crypt$1.run()V+0
    java.awt.event.InvocationEvent.dispatch()V+47
    java.awt.EventQueue.dispatchEventImpl(Ljava/awt/AWTEvent;Ljava/lang/Object;)V+21
    java.awt.EventQueue.access$000(Ljava/awt/EventQueue;Ljava/awt/AWTEvent;Ljava/lang/Object;)V+3
    java.awt.EventQueue$1.run()Ljava/lang/Void;+12
    java.awt.EventQueue$1.run()Ljava/lang/Object;+1
v  ~StubRoutines::call_stub
    java.security.AccessController.doPrivileged(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;)Ljava/lang/Object;+0
    java.security.AccessControlContext$1.doIntersectionPrivilege(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;Ljava/security/AccessControlContext;)Ljava/lang/Object;+28
    java.awt.EventQueue.dispatchEvent(Ljava/awt/AWTEvent;)V+46
    java.awt.EventDispatchThread.pumpOneEventForFilters(I)Z+204
    java.awt.EventDispatchThread.pumpEventsForFilter(ILjava/awt/Conditional;Ljava/awt/EventFilter;)V+30
    java.awt.EventDispatchThread.pumpEventsForHierarchy(ILjava/awt/Conditional;Ljava/awt/Component;)V+11
    java.awt.EventDispatchThread.pumpEvents(ILjava/awt/Conditional;)V+4
    java.awt.EventDispatchThread.pumpEvents(Ljava/awt/Conditional;)V+3
    java.awt.EventDispatchThread.run()V+9
v  ~StubRoutines::call_stub

---------------  P R O C E S S  ---------------

Java Threads: ( => current thread )
  0x0000000007309000 JavaThread "Substance heap status" daemon [_thread_blocked, id=5732, stack(0x000000000c000000,0x000000000c100000)]
  0x000000000737e000 JavaThread "Headspace mixer frame proc thread" daemon [_thread_blocked, id=5520, stack(0x000000000bd00000,0x000000000be00000)]
  0x00000000072a2800 JavaThread "Java Sound Event Dispatcher" daemon [_thread_blocked, id=2956, stack(0x000000000b700000,0x000000000b800000)]
  0x00000000071dc800 JavaThread "Thread-3" [_thread_in_native, id=4104, stack(0x00000000082b0000,0x00000000083b0000)]
  0x00000000003db800 JavaThread "DestroyJavaVM" [_thread_blocked, id=5600, stack(0x0000000002570000,0x0000000002670000)]
=>0x000000000713d000 JavaThread "AWT-EventQueue-0" [_thread_in_native, id=4364, stack(0x0000000007e30000,0x0000000007f30000)]
  0x00000000067af800 JavaThread "AWT-Windows" daemon [_thread_in_native, id=5760, stack(0x0000000007830000,0x0000000007930000)]
  0x00000000067ae800 JavaThread "AWT-Shutdown" [_thread_blocked, id=2600, stack(0x0000000007730000,0x0000000007830000)]
  0x00000000066ea800 JavaThread "Java2D Disposer" daemon [_thread_blocked, id=4244, stack(0x00000000074e0000,0x00000000075e0000)]
  0x0000000006684000 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=5196, stack(0x0000000006d10000,0x0000000006e10000)]
  0x0000000006681000 JavaThread "C2 CompilerThread1" daemon [_thread_blocked, id=4192, stack(0x0000000006c10000,0x0000000006d10000)]
  0x000000000666e000 JavaThread "C2 CompilerThread0" daemon [_thread_blocked, id=4260, stack(0x0000000006b10000,0x0000000006c10000)]
  0x000000000666b000 JavaThread "Attach Listener" daemon [_thread_blocked, id=5008, stack(0x0000000006a10000,0x0000000006b10000)]
  0x0000000006666000 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=4032, stack(0x0000000006910000,0x0000000006a10000)]
  0x000000000064b800 JavaThread "Finalizer" daemon [_thread_blocked, id=1132, stack(0x0000000006810000,0x0000000006910000)]
  0x0000000000649000 JavaThread "Reference Handler" daemon [_thread_blocked, id=5336, stack(0x0000000006510000,0x0000000006610000)]

Other Threads:
  0x0000000000641000 VMThread [stack: 0x0000000006410000,0x0000000006510000] [id=3820]
  0x0000000006697000 WatcherThread [stack: 0x0000000006e10000,0x0000000006f10000] [id=5156]

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread: None

Heap
 PSYoungGen      total 19136K, used 15506K [0x00000000eaab0000, 0x00000000ec000000, 0x0000000100000000)
  eden space 16448K, 94% used [0x00000000eaab0000,0x00000000eb9d4b98,0x00000000ebac0000)
  from space 2688K, 0% used [0x00000000ebd60000,0x00000000ebd60000,0x00000000ec000000)
  to   space 2688K, 0% used [0x00000000ebac0000,0x00000000ebac0000,0x00000000ebd60000)
 PSOldGen        total 43712K, used 0K [0x00000000c0000000, 0x00000000c2ab0000, 0x00000000eaab0000)
  object space 43712K, 0% used [0x00000000c0000000,0x00000000c0000000,0x00000000c2ab0000)
 PSPermGen       total 21248K, used 15942K [0x00000000bae00000, 0x00000000bc2c0000, 0x00000000c0000000)
  object space 21248K, 75% used [0x00000000bae00000,0x00000000bbd91870,0x00000000bc2c0000)

Code Cache  [0x0000000002670000, 0x00000000028e0000, 0x0000000005670000)
 total_blobs=470 nmethods=39 adapters=385 free_code_cache=49729536 largest_free_block=6336

Dynamic libraries:
0x0000000000400000 - 0x000000000042e000     C:\Program Files\Java\jre6\bin\javaw.exe
0x00000000770f0000 - 0x0000000077299000     C:\Windows\SYSTEM32\ntdll.dll
0x0000000076ed0000 - 0x0000000076fef000     C:\Windows\system32\kernel32.dll
0x000007fefd0f0000 - 0x000007fefd15c000     C:\Windows\system32\KERNELBASE.dll
0x0000000074de0000 - 0x0000000074e1f000     C:\Program Files\AVAST Software\Avast\snxhk64.dll
0x000007fefdde0000 - 0x000007fefdebb000     C:\Windows\system32\ADVAPI32.dll
0x000007fefd410000 - 0x000007fefd4af000     C:\Windows\system32\msvcrt.dll
0x000007fefd4b0000 - 0x000007fefd4cf000     C:\Windows\SYSTEM32\sechost.dll
0x000007fefef90000 - 0x000007feff0bd000     C:\Windows\system32\RPCRT4.dll
0x0000000076ff0000 - 0x00000000770ea000     C:\Windows\system32\USER32.dll
0x000007fefdec0000 - 0x000007fefdf27000     C:\Windows\system32\GDI32.dll
0x000007fefee50000 - 0x000007fefee5e000     C:\Windows\system32\LPK.dll
0x000007feff0c0000 - 0x000007feff189000     C:\Windows\system32\USP10.dll
0x000007fefe090000 - 0x000007fefe0be000     C:\Windows\system32\IMM32.DLL
0x000007fefd4d0000 - 0x000007fefd5d9000     C:\Windows\system32\MSCTF.dll
0x000000006d7f0000 - 0x000000006dfa8000     C:\Program Files\Java\jre6\bin\server\jvm.dll
0x000007fefa980000 - 0x000007fefa9bb000     C:\Windows\system32\WINMM.dll
0x000000006d760000 - 0x000000006d76e000     C:\Program Files\Java\jre6\bin\verify.dll
0x000000006d3b0000 - 0x000000006d3d7000     C:\Program Files\Java\jre6\bin\java.dll
0x000000006d7b0000 - 0x000000006d7c2000     C:\Program Files\Java\jre6\bin\zip.dll
0x000000006d000000 - 0x000000006d1c3000     C:\Program Files\Java\jre6\bin\awt.dll
0x000007fefa620000 - 0x000007fefa691000     C:\Windows\system32\WINSPOOL.DRV
0x000007fefd7f0000 - 0x000007fefd9f3000     C:\Windows\system32\ole32.dll
0x000007fefe0c0000 - 0x000007fefee48000     C:\Windows\system32\SHELL32.dll
0x000007fefef10000 - 0x000007fefef81000     C:\Windows\system32\SHLWAPI.dll
0x000007fefbaf0000 - 0x000007fefbce4000     C:\Windows\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.7601.17514_none_fa396087175ac9ac\COMCTL32.dll
0x000007fefb3b0000 - 0x000007fefb3c8000     C:\Windows\system32\DWMAPI.DLL
0x000007fefb780000 - 0x000007fefb7d6000     C:\Windows\system32\uxtheme.dll
0x000007fef93b0000 - 0x000007fef942f000     C:\Program Files\Common Files\microsoft shared\ink\tiptsf.dll
0x000007fefd5e0000 - 0x000007fefd6b7000     C:\Windows\system32\OLEAUT32.dll
0x000007fefc180000 - 0x000007fefc18c000     C:\Windows\system32\version.dll
0x000007fefcf70000 - 0x000007fefcf7f000     C:\Windows\system32\CRYPTBASE.dll
0x000000006d2a0000 - 0x000000006d306000     C:\Program Files\Java\jre6\bin\fontmanager.dll
0x000000006d600000 - 0x000000006d617000     C:\Program Files\Java\jre6\bin\net.dll
0x000007fefee60000 - 0x000007fefeead000     C:\Windows\system32\WS2_32.dll
0x000007feff210000 - 0x000007feff218000     C:\Windows\system32\NSI.dll
0x000007fefc870000 - 0x000007fefc8c5000     C:\Windows\system32\mswsock.dll
0x000007fefc860000 - 0x000007fefc867000     C:\Windows\System32\wship6.dll
0x000000006d620000 - 0x000000006d62b000     C:\Program Files\Java\jre6\bin\nio.dll
0x0000000180000000 - 0x0000000180050000     C:\Users\Chris\AppData\Roaming\jRabbit Data\LWJGL Natives\lwjgl64.dll
0x000007fef1550000 - 0x000007fef166d000     C:\Windows\system32\OPENGL32.dll
0x000007fef47c0000 - 0x000007fef47ed000     C:\Windows\system32\GLU32.dll
0x000007fef1210000 - 0x000007fef1301000     C:\Windows\system32\DDRAW.dll
0x000007fef8090000 - 0x000007fef8098000     C:\Windows\system32\DCIMAN32.dll
0x000007feff220000 - 0x000007feff3f7000     C:\Windows\system32\SETUPAPI.dll
0x000007fefd160000 - 0x000007fefd196000     C:\Windows\system32\CFGMGR32.dll
0x000007fefd3b0000 - 0x000007fefd3ca000     C:\Windows\system32\DEVOBJ.dll
0x000007fefa2a0000 - 0x000007fefa49f000     C:\Windows\system32\d3d9.dll
0x000007fefa290000 - 0x000007fefa297000     C:\Windows\system32\d3d8thk.dll
0x000007feed900000 - 0x000007feee777000     C:\Windows\system32\nvd3dumx.dll
0x000007fefb860000 - 0x000007fefb88c000     C:\Windows\system32\powrprof.dll
0x000000006d510000 - 0x000000006d53e000     C:\Program Files\Java\jre6\bin\jsound.dll
0x000007fefb730000 - 0x000007fefb77b000     C:\Windows\system32\MMDevAPI.DLL
0x000007fefb940000 - 0x000007fefba6c000     C:\Windows\system32\PROPSYS.dll
0x000007fefa5e0000 - 0x000007fefa61b000     C:\Windows\system32\wdmaud.drv
0x0000000074a00000 - 0x0000000074a06000     C:\Windows\system32\ksuser.dll
0x000007fefbae0000 - 0x000007fefbae9000     C:\Windows\system32\AVRT.dll
0x000007fefa590000 - 0x000007fefa5df000     C:\Windows\system32\AUDIOSES.DLL
0x000007fefa4e0000 - 0x000007fefa4ea000     C:\Windows\system32\msacm32.drv
0x000007fefa4c0000 - 0x000007fefa4d8000     C:\Windows\system32\MSACM32.dll
0x000007fefa4a0000 - 0x000007fefa4a9000     C:\Windows\system32\midimap.dll
0x000000006d210000 - 0x000000006d238000     C:\Program Files\Java\jre6\bin\dcpr.dll
0x000007fefdf30000 - 0x000007fefdfc9000     C:\Windows\system32\CLBCatQ.DLL
0x000007fefcb00000 - 0x000007fefcb17000     C:\Windows\system32\CRYPTSP.dll
0x000007fefc5d0000 - 0x000007fefc617000     C:\Windows\system32\rsaenh.dll
0x000007fefc390000 - 0x000007fefc3ae000     C:\Windows\system32\USERENV.dll
0x000007fefcfa0000 - 0x000007fefcfaf000     C:\Windows\system32\profapi.dll
0x000007fefad70000 - 0x000007fefad85000     C:\Windows\system32\NLAapi.dll
0x000007fefb220000 - 0x000007fefb235000     C:\Windows\system32\napinsp.dll
0x000007fefb200000 - 0x000007fefb219000     C:\Windows\system32\pnrpnsp.dll
0x000007fefc6f0000 - 0x000007fefc74b000     C:\Windows\system32\DNSAPI.dll
0x000007fefbac0000 - 0x000007fefbacb000     C:\Windows\System32\winrnr.dll
0x0000000074700000 - 0x000000007472e000     C:\Program Files\Common Files\Microsoft Shared\Windows Live\WLIDNSP.DLL
0x00000000772b0000 - 0x00000000772b7000     C:\Windows\system32\PSAPI.DLL
0x00000000746d0000 - 0x00000000746f6000     C:\Program Files\Bonjour\mdnsNSP.dll
0x000007fef9ec0000 - 0x000007fef9ee7000     C:\Windows\system32\Iphlpapi.DLL
0x000007fef9eb0000 - 0x000007fef9ebb000     C:\Windows\system32\WINNSI.DLL
0x000007fefc250000 - 0x000007fefc257000     C:\Windows\System32\wshtcpip.dll
0x000007fefb7e0000 - 0x000007fefb7e8000     C:\Windows\system32\rasadhlp.dll
0x000007fef9cf0000 - 0x000007fef9d43000     C:\Windows\System32\fwpuclnt.dll
0x000007fefcf80000 - 0x000007fefcf94000     C:\Windows\system32\RpcRtRemote.dll

VM Arguments:
jvm_args: -Dfile.encoding=Cp1252 
java_command: main.Crypt
Launcher Type: SUN_STANDARD

Environment Variables:
CLASSPATH=.;C:\Program Files (x86)\Java\jre6\lib\ext\QTJava.zip
PATH=C:/Program Files/Java/jre6/bin/server;C:/Program Files/Java/jre6/bin;C:/Program Files/Java/jre6/lib/amd64;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\SlikSvn\bin\;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files (x86)\QuickTime\QTSystem\;C:\Program Files (x86)\Autodesk\Backburner\;J:\Development\Eclipse;
USERNAME=Chris
OS=Windows_NT
PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 15 Stepping 11, GenuineIntel

---------------  S Y S T E M  ---------------

OS: Windows 7 , 64 bit Build 7601 Service Pack 1

CPU:total 4 (4 cores per cpu, 1 threads per core) family 6 model 15 stepping 11, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3

Memory: 4k page, physical 4193464k(2246544k free), swap 8385080k(6086692k free)

vm_info: Java HotSpot(TM) 64-Bit Server VM (20.2-b06) for windows-amd64 JRE (1.6.0_27-b07), built on Jul 19 2011 01:08:22 by "java_re" with MS VC++ 8.0 (VS2005)

time: Mon Oct 03 09:29:15 2011
elapsed time: 1 seconds

From looking around on Stack Overflow, it seems like this is occasionally related to memory settings. Is that the case here? I've already set Eclipse to run with a lot of memory at its disposal; additionally, I'm only creating a small JFrame with a few components on it, plus initializing the LWJGL libraries. That doesn't take up much memory.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

℡Ms空城旧梦 2024-12-15 08:15:36

我经常在 Windows Vista 64 机器上遇到 java 6 和 Swing 问题(但仅当我从 eclipse 启动应用程序时)。

对我来说解决这个问题的方法是禁用 Direct3D:

java -Dsun.java2d.d3d=false ...

另请参阅 http://download.oracle.com/javase/6/docs/technotes/guides/2d/flags.html#d3d 了解更多信息。

I often have problems with java 6 and Swing on my Windows Vista 64 box (but only when I launch my app from eclipse).

The way to fix it for me was to disable Direct3D:

java -Dsun.java2d.d3d=false ...

See also http://download.oracle.com/javase/6/docs/technotes/guides/2d/flags.html#d3d for further information.

海夕 2024-12-15 08:15:36

嗯,错误是由于 dll 试图写入不应写入的内存。如果只是偶尔发生,可能是因为没有在 事件调度上构建组件线程。检查一下也没什么坏处。

Well, the error is from a dll trying to write to memory where it shouldn't. If it happens just sometimes, it may be from not building components on the event dispatch thread. It can't hurt to check.

春花秋月 2024-12-15 08:15:36

Oracle 的此错误报告可能与以下内容相关: https://bugs.java.com/bugdatabase/view_bug;jsessionid=e5f1f1011daf96ffffffffdd154dd2e731150?bug_id=6967456

可能和swing的拖拽有关放置功能 - 查看在表单组件上禁用拖放是否可以抑制错误。

This bug report at oracle may be related: https://bugs.java.com/bugdatabase/view_bug;jsessionid=e5f1f1011daf96ffffffffdd154dd2e731150?bug_id=6967456

It may be related to swing's drag & drop functionality - see if disabling drag and drop on your form components supresses the error.

我是有多爱你 2024-12-15 08:15:36

@CodeBunny,这将是评论:

1)有 Trindent.jar

2)如何将 Substance Look 和 Feel 应用于 JFrame,

SwingUtilities.invokeLater(new Runnable() {

    @Override
    public void run() {
        try {
            UIManager.setLookAndFeel(new SubstanceOfficeSilver2007LookAndFeel());
            SwingUtilities.updateComponentTreeUI(frame);
        } catch (UnsupportedLookAndFeelException e) {
            throw new RuntimeException(e);
        }
    }
});

在大多数情况下(如果有一些 BackGround 任务)需要使用 invokeAndWait

编辑

取决于

1)如果您加载空容器,则添加数据(invokeLater)

2)或加载所有内容并等待(invokeAndWait),

3)是您的最后一行中容器的构造函数包含 setVisible(true),最后一行可能的行,

4) 也许你在 EDT 之外,你必须加载如此重的东西,不是有 RepaintManager 错误吗???

5) 禁用 Substance,如果您收到此错误,则来自编码错误或某些代码返回错误,否则是否存在与 RepaintManager(过载本机操作系统延迟)或并发性相关的内容,简单地说您的代码超出了 EDT,

6 )物质是如此敏感,对于 EDT 问题之外的已完成代码非常敏感,从 GUI 相关代码中删除所有 Thread.sleep(int)

@CodeBunny, that would be comment:

1) is there Trindent.jar

2) how do you apply Substance Look and Feel to the JFrame,

SwingUtilities.invokeLater(new Runnable() {

    @Override
    public void run() {
        try {
            UIManager.setLookAndFeel(new SubstanceOfficeSilver2007LookAndFeel());
            SwingUtilities.updateComponentTreeUI(frame);
        } catch (UnsupportedLookAndFeelException e) {
            throw new RuntimeException(e);
        }
    }
});

in most cases (if there some BackGround task) required usage of invokeAndWait

EDIT

depends

1) if you are load empty container, then add data (invokeLater)

2) or load everything and wait for that (invokeAndWait),

3) are your contructor for Container in last line contains setVisible(true), last from possible lines,

4) maybe you are outside EDT, something you must loading so heavy, isn't there RepaintManager Error???

5) disable Substance, if you get this error, then came from mistake in codeing or some your code returns error, otherwise is there something rellated with RepaintManager (overload Native OS Latency) or with Concurency, simple your code is out of EDT,

6) Substance is so sensitive, very sensitive for done code out of EDT issues, remove all Thread.sleep(int) from GUI rellated code

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文