偶尔会在Eclipse和Netbeans中崩溃JVM

时间:2014-05-26 15:57:16

标签: java crash jvm jvm-hotspot jvm-crash

编辑18.07.2014: 我一直在检查笔记和系统设置,我的同事们都在运行Windows XP机器并使用Java 1.7,没有任何问题。 因此,由于Oracle在Windows XP上发布了有关java 7的信息(请参阅:https://blogs.oracle.com/henrik/entry/the_future_of_java_on),我相信:

  • 我或我们的自动化系统在过去或现在安装的一些奇怪的软件导致我的Java 7安装在大约50%的情况下使我的Java应用程序崩溃
  • 导致此类
  • 出现某种硬件故障
  • 我们的IT提供商使用的自动安装系统安装的较旧版本的JVM导致"交叉过敏"与JDK。

由于我仍然需要使用这台机器至少工作半年,所以如果有人能想到我试图揭示的东西,我会重新尝试。

我也删除了对唯一答案的接受,因为它不是我问题的正确答案。


自从切换到Java 1.7以来,我在编写代码时遇到了很多麻烦。 发生的错误看起来都很相似,都是从(下面的完整堆栈)开始:

#  EXCEPTION_ILLEGAL_INSTRUCTION (0xc000001d) at pc=0x0098a9dd, pid=4424, tid=492
#
# JRE version:  (7.0_55-b13) (build )
# Java VM: Java HotSpot(TM) Client VM (24.55-b03 mixed mode, sharing windows-x86 )
# Problematic frame:
# j  java.lang.Thread.registerNatives()V+0

要构建的应用程序不会(全部)使用本机库,即使是仅使用Java的库或应用程序也会因上述代码崩溃(四次编译中的一次,主观测量)。 我一直在寻找,主要是找到关于这个的Minecraft-forum-links(由于显而易见的原因,我无法从工作中访问)。 使用ANT或maven在Eclipse(Kepler)和Netbeans(7.4和8.0)上会出现此问题。

我有一种直觉,它可能与我们的系统提供商自动安装jre 1.7.x(当前版本1.7.0_55)有关,而我需要手动安装jdk(1.7.0_55)。 我在我的system32目录中重命名了java可执行文件,这似乎让问题暂时搁置了一段时间,但现在又回来了。

有谁知道我接下来应该检查什么? 和: 如果你觉得这可能不是这个问题的正确论坛,我会提前道歉。我想如果有人遇到过这个问题,那将是我们的开发者。如果我错了,请纠正我。

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ILLEGAL_INSTRUCTION (0xc000001d) at pc=0x0098a9dd, pid=4424, tid=492
#
# JRE version:  (7.0_55-b13) (build )
# Java VM: Java HotSpot(TM) Client VM (24.55-b03 mixed mode, sharing windows-x86 )
# Problematic frame:
# j  java.lang.Thread.registerNatives()V+0
#
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.sun.com/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 (0x003ca400):  JavaThread "Unknown thread" [_thread_in_native, id=492, stack(0x00900000,0x00950000)]

siginfo: ExceptionCode=0xc000001d

Registers:
EAX=0x00000000, EBX=0x375076c0, ECX=0xc8cc39c5, EDX=0x00000000
ESP=0x0094fb18, EBP=0x0094fb38, ESI=0x36b00110, EDI=0x003ca400
EIP=0x0098a9dd, EFLAGS=0x00010246

Top of Stack: (sp=0x0094fb18)
0x0094fb18:   0094fb18 36b00110 0094fb44 375068b0
0x0094fb28:   00000000 375076c0 00000000 0094fb48
0x0094fb38:   0094fb68 00983207 37aabae8 009888c9
0x0094fb48:   0094fb48 36affde0 0094fb6c 375068b0
0x0094fb58:   00000000 37507428 0094fb48 0094fb70
0x0094fb68:   0094fb88 009803d7 0094fb98 6e9deb22
0x0094fb78:   00001f80 00980372 003ca400 37507428
0x0094fb88:   0094fc08 6e9df25a 0094fbbc 0094fc90 

Instructions: (pc=0x0098a9dd)
0x0098a9bd:   28 01 00 00 c7 87 24 01 00 00 bb a9 98 00 89 a7
0x0098a9cd:   20 01 00 00 c7 87 6c 01 00 00 04 00 00 00 ff d0
0x0098a9dd:   c5 f8 77 81 7d 0c ca 88 98 00 0f 84 0d 00 00 00
0x0098a9ed:   81 7d 0c db 88 98 00 0f 85 06 00 00 00 83 ec 08 


Register to memory mapping:

EAX=0x00000000 is an unknown value
EBX=0x375076c0 is an oop
{method} 
 - klass: {other class}
ECX=0xc8cc39c5 is an unknown value
EDX=0x00000000 is an unknown value
ESP=0x0094fb18 is pointing into the stack for thread: 0x003ca400
EBP=0x0094fb38 is pointing into the stack for thread: 0x003ca400
ESI=0x36b00110 is an oop
{constMethod} 
 - klass: {other class}
 - constants:       0x37506020 constant pool [537] for 'java/lang/Thread' cache=0x375068b0
EDI=0x003ca400 is a thread


Stack: [0x00900000,0x00950000],  sp=0x0094fb18,  free space=318k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
j  java.lang.Thread.registerNatives()V+0
j  java.lang.Thread.<clinit>()V+0
v  ~StubRoutines::call_stub
V  [jvm.dll+0x13f25a]
V  [jvm.dll+0x202c1e]
V  [jvm.dll+0x13f2dd]
V  [jvm.dll+0xa6346]
V  [jvm.dll+0xa6d4e]
V  [jvm.dll+0xa71a4]
V  [jvm.dll+0xa74b8]
V  [jvm.dll+0x15b7ee]
V  [jvm.dll+0xc8e1f]
C  [java.exe+0x13c1]
C  [java.exe+0x1e33]
C  [java.exe+0xa591]
C  [java.exe+0xa61b]
C  [kernel32.dll+0xb729]

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  java.lang.Thread.registerNatives()V+0
j  java.lang.Thread.<clinit>()V+0
v  ~StubRoutines::call_stub

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

Java Threads: ( => current thread )
=>0x003ca400 JavaThread "Unknown thread" [_thread_in_native, id=492, stack(0x00900000,0x00950000)]

Other Threads:
  0x02a1a400 VMThread [stack: 0x02d30000,0x02d80000] [id=4924]

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread: None

Heap
 def new generation   total 157248K, used 2795K [0x12af0000, 0x1d590000, 0x1d590000)
  eden space 139776K,   2% used [0x12af0000, 0x12daae30, 0x1b370000)
  from space 17472K,   0% used [0x1b370000, 0x1b370000, 0x1c480000)
  to   space 17472K,   0% used [0x1c480000, 0x1c480000, 0x1d590000)
 tenured generation   total 349568K, used 0K [0x1d590000, 0x32af0000, 0x32af0000)
   the space 349568K,   0% used [0x1d590000, 0x1d590000, 0x1d590200, 0x32af0000)
 compacting perm gen  total 12288K, used 2K [0x32af0000, 0x336f0000, 0x36af0000)
   the space 12288K,   0% used [0x32af0000, 0x32af0ae8, 0x32af0c00, 0x336f0000)
    ro space 10240K,  44% used [0x36af0000, 0x36f68300, 0x36f68400, 0x374f0000)
    rw space 12288K,  52% used [0x374f0000, 0x37b3f100, 0x37b3f200, 0x380f0000)

Card table byte_map: [0x02b00000,0x02c30000] byte_map_base: 0x02a6a880

Polling page: 0x00950000

Code Cache  [0x00980000, 0x009c8000, 0x02980000)
 total_blobs=49 nmethods=0 adapters=28 free_code_cache=32496Kb largest_free_block=33275968

Compilation events (0 events):
No events

GC Heap History (0 events):
No events

Deoptimization events (0 events):
No events

Internal exceptions (0 events):
No events

Events (1 events):
Event: 0.019 Thread 0x003ca400 Thread added: 0x003ca400


Dynamic libraries:
0x00400000 - 0x0042f000     C:\Programme\Java\jdk1.7.0_55\bin\java.exe
0x7c910000 - 0x7c9c9000     C:\WINDOWS\system32\ntdll.dll
0x7c800000 - 0x7c908000     C:\WINDOWS\system32\kernel32.dll
0x77da0000 - 0x77e4a000     C:\WINDOWS\system32\ADVAPI32.dll
0x77e50000 - 0x77ee3000     C:\WINDOWS\system32\RPCRT4.dll
0x77fc0000 - 0x77fd1000     C:\WINDOWS\system32\Secur32.dll
0x7e360000 - 0x7e3f1000     C:\WINDOWS\system32\USER32.dll
0x77ef0000 - 0x77f39000     C:\WINDOWS\system32\GDI32.dll
0x773a0000 - 0x774a3000     C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.6028_x-ww_61e65202\COMCTL32.dll
0x77be0000 - 0x77c38000     C:\WINDOWS\system32\msvcrt.dll
0x77f40000 - 0x77fb6000     C:\WINDOWS\system32\SHLWAPI.dll
0x76330000 - 0x7634d000     C:\WINDOWS\system32\IMM32.DLL
0x78aa0000 - 0x78b5f000     C:\Programme\Java\jdk1.7.0_55\jre\bin\msvcr100.dll
0x6e8a0000 - 0x6ec20000     C:\Programme\Java\jdk1.7.0_55\jre\bin\client\jvm.dll
0x71a30000 - 0x71a3a000     C:\WINDOWS\system32\WSOCK32.dll
0x71a10000 - 0x71a27000     C:\WINDOWS\system32\WS2_32.dll
0x71a00000 - 0x71a08000     C:\WINDOWS\system32\WS2HELP.dll
0x76af0000 - 0x76b1e000     C:\WINDOWS\system32\WINMM.dll
0x76bb0000 - 0x76bbb000     C:\WINDOWS\system32\PSAPI.DLL
0x6e7f0000 - 0x6e7fc000     C:\Programme\Java\jdk1.7.0_55\jre\bin\verify.dll
0x6d590000 - 0x6d5b0000     C:\Programme\Java\jdk1.7.0_55\jre\bin\java.dll
0x6e880000 - 0x6e893000     C:\Programme\Java\jdk1.7.0_55\jre\bin\zip.dll
0x59dd0000 - 0x59e71000     C:\WINDOWS\system32\dbghelp.dll
0x77bd0000 - 0x77bd8000     C:\WINDOWS\system32\VERSION.dll

VM Arguments:
jvm_args: -Xms512m -Xmx512m -Dclassworlds.conf=D:\Daten\apps\NetBeans 8.0\java\maven\bin\m2.conf -Dmaven.home=D:\Daten\apps\NetBeans 8.0\java\maven 
java_command: org.codehaus.plexus.classworlds.launcher.Launcher -Dmaven.ext.class.path=D:\Daten\apps\NetBeans 8.0\java\maven-nblib\netbeans-eventspy.jar -Dfile.encoding=UTF-8 -Djava.net.useSystemProxies=true clean install
Launcher Type: SUN_STANDARD

Environment Variables:
JAVA_HOME=C:\Programme\Java\jdk1.7.0_55
CLASSPATH=.;C:\Programme\Java\jdk1.7.0_55\jre\lib
PATH=C:\Programme\Java\jdk1.7.0_55\jre\bin;C:\Programme\Oracle\ora11\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Programme\IBM\Client Access\;C:\Programme\IBM\Client Access\Shared;C:\Programme\IBM\Client Access\Emulator;C:\PROGRA~1\IBM\CLIENT~1;C:\PROGRA~1\IBM\CLIENT~1\Shared;C:\PROGRA~1\IBM\CLIENT~1\Emulator;D:\Daten\Apps\MySQL\MySQL Server 5.1\bin;C:\Programme\QuickTime\QTSystem\;C:\Programme\Java\jdk1.7.0_55\jre\bin;C:\Programme\Oracle\ora11\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Programme\IBM\Client Access\;C:\Programme\IBM\Client Access\Shared;C:\Programme\IBM\Client Access\Emulator;C:\PROGRA~1\IBM\CLIENT~1;C:\PROGRA~1\IBM\CLIENT~1\Shared;C:\PROGRA~1\IBM\CLIENT~1\Emulator;D:\Daten\Apps\MySQL\MySQL Server 5.1\bin;C:\Programme\QuickTime\QTSystem\;D:\Daten\apps\MinGW\bin;D:\Daten\apps\MinGW\msys\1.0\bin;C:\Programme\CVSNT\;D:\Daten\apps\apache-maven-3.1.1\bin
USERNAME=xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
OS=Windows_NT
PROCESSOR_IDENTIFIER=x86 Family 6 Model 42 Stepping 7, GenuineIntel



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

OS: Windows XP Build 2600 Service Pack 3

CPU:total 4 (2 cores per cpu, 2 threads per core) family 6 model 42 stepping 7, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, avx, aes, ht, tsc, tscinvbit

Memory: 4k page, physical 3318688k(1226096k free), swap 5247940k(2492700k free)

vm_info: Java HotSpot(TM) Client VM (24.55-b03) for windows-x86 JRE (1.7.0_55-b13), built on Mar 17 2014 20:01:11 by "java_re" with unknown MS VC++:1600

time: Mon May 26 17:31:35 2014
elapsed time: 0 seconds

1 个答案:

答案 0 :(得分:2)

Java 7的最低版本是“Windows Vista SP2”您可能必须升级您的操作系统。 https://www.java.com/en/download/help/sysreq.xml

  

注意:截至2014年4月8日,Microsoft已停止支持Windows XP,因此它不再是官方支持的平台。用户可能仍然继续在Windows XP上使用Java 7更新,风险自负,但仅支持Microsoft Windows版本Windows Vista或更高版本。