偶尔在Eclipse和Netbeans中崩溃JVM。

时间:2021-09-22 15:00:48

Edit 18.07.2014: I have been checking notes and system setups with my colleagues who all have their Windows XP machines running and use Java 1.7 with no problems whatsoever. Therefore and because Oracle released information regarding java 7 (see: https://blogs.oracle.com/henrik/entry/the_future_of_java_on) on Windows XP, I believe that:

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

  • some freakish software installed in the past or present by me or our automated system causes my Java 7 installation to crash my java applications in around 50% of the cases
  • 我或我们的自动化系统安装在过去或现在的一些freakish软件导致我的Java 7安装在大约50%的情况下崩溃了我的Java应用程序。
  • there is some kind of hardware malfunction causing this
  • 有某种硬件故障导致了这个。
  • Older versions of the JVM installed by the automatic install system our IT-provider uses cause "cross allergies" with the JDK.
  • 由我们的it提供者使用的自动安装系统安装的JVM的旧版本会引起JDK的“交叉过敏”。

Since i still have to work at least half a year with this machine, i am trying anew if anyone can think of something i might try to shed a light on things.

因为我还得在这台机器上工作至少半年,所以如果有人能想到一些我可能会尝试的东西,我就会重新尝试。

I also removed the acceptance of the only answer as it is not the correct answer to my problem.

我也去掉了唯一的答案,因为这不是我问题的正确答案。


Since switching to Java 1.7, i have a lot of trouble compiling my code at work. The errors that occur all look similiar, all starting with (full stack below):

由于切换到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

The applications that are to be build do not (all) use native libraries, i.e. even java-only libraries or applications crash with above mentioned code (once out of four compiles, subjectively measured). I have been searching around, mostly finding minecraft-forum-links about this (which i cannot access from work for obvious reasons). This problem occurs on Eclipse (Kepler) and Netbeans (7.4 and 8.0) with ANT or maven.

要构建的应用程序不(全部)使用本地库,也就是说,即使只有java的库或应用程序也会崩溃,上面提到的代码(在四次编译中有一次是由主体性度量的)。我一直在四处寻找,主要是找到关于这个的minecraft-forum链接(由于显而易见的原因,我无法从工作中访问)。这个问题发生在Eclipse (Kepler)和Netbeans(7.4和8.0)上,有ANT或maven。

I have a gut feeling that it might have something to do with our system provider installing jre 1.7.x (current version 1.7.0_55) automatically while i need to install the jdk (1.7.0_55) manually. I renamed the java executables in my system32 directory, which seemed to calm the problem for a while but now it is back.

我有一种直觉,它可能与我们的系统提供者安装jre 1.7有关。当我需要手动安装jdk(1.7.0_55)时,它会自动执行。我在system32目录中重命名了java可执行文件,它似乎暂时平息了这个问题,但现在它又回来了。

Does anyone have an idea what I should check next? And: I apologize in advance if you feel that this might not be the right forum for this question. I thought if ANYONE ever encountered this problem, it would be us devs. Correct me if i am wrong.

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

#
# 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 个解决方案

#1


2  

The minimum version for Java 7 is "Windows Vista SP2" You may have to upgrade your OS. https://www.java.com/en/download/help/sysreq.xml

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

Note: As of April 8, 2014 Microsoft stopped supporting Windows XP and therefore it is no longer an officially supported platform. Users may still continue to use Java 7 updates on Windows XP at their own risk, but support will only be provided against Microsoft Windows releases Windows Vista or later.

注:截至2014年4月8日,微软停止支持Windows XP,因此不再是官方支持的平台。在Windows XP上,用户可能仍然会继续使用Java 7的更新,但只会对微软Windows Vista或以后的版本提供支持。

#1


2  

The minimum version for Java 7 is "Windows Vista SP2" You may have to upgrade your OS. https://www.java.com/en/download/help/sysreq.xml

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

Note: As of April 8, 2014 Microsoft stopped supporting Windows XP and therefore it is no longer an officially supported platform. Users may still continue to use Java 7 updates on Windows XP at their own risk, but support will only be provided against Microsoft Windows releases Windows Vista or later.

注:截至2014年4月8日,微软停止支持Windows XP,因此不再是官方支持的平台。在Windows XP上,用户可能仍然会继续使用Java 7的更新,但只会对微软Windows Vista或以后的版本提供支持。