我负责维护java swing应用程序。它曾经在java 1.4上运行得非常好,但随着时间的推移,我们遇到了越来越多的JRE崩溃,这使我们升级到JRE 1.6,至少仍然由Sun维护。
使用JRE 1.6,我们现在遇到了一个不同类型的问题,在显示ECW图像文件的部分感谢JNI和本机dlls NCSEcw.dll,NCSUtil.dll和NCScnet.dll(由ERDAS生成,可以是在这里找到:http://www.erdas.com/Products/ERDASDownloads/tabid/192/CurrentID/2560/Default.aspx)。
大多数情况下,问题是冻结(可能是死锁)但是我们有一两次真正的JRE崩溃,我在下面复制了hs_err_pid消息。它并不出现在所有机器上,并且在相关机器上并不系统(尽管非常频繁)。大多数相关的机器似乎都运行Windows 2000 SP4,但它也出现在一些XP机器上,我找不到区分它们的标准。
JNI调用库的方式是否有区别,使其适用于1.4而不是1.6?我有点失落,谢谢你的任何线索。
# # A fatal error has been detected by the Java Runtime Environment: # # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x5ffa1049, pid=2196, tid=2244 # # JRE version: 6.0_20-b02 # Java VM: Java HotSpot(TM) Client VM (16.3-b01 mixed mode windows-x86 ) # Problematic frame: # C [NCSEcw.dll+0x1049] # # 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 (0x33893800): JavaThread "Pool-1" [_thread_in_native, id=2244, stack(0x36580000,0x36680000)] siginfo: ExceptionCode=0xc0000005, reading address 0x00000000 Registers: EAX=0x00000000, EBX=0x38e681d0, ECX=0x3460ff88, EDX=0x0000019c ESP=0x3667f6e0, EBP=0x00000000, ESI=0x00000004, EDI=0x00000000 EIP=0x5ffa1049, EFLAGS=0x00010206 Top of Stack: (sp=0x3667f6e0) 0x3667f6e0: 00000010 3460ffa0 3895e5a8 38e68248 0x3667f6f0: 00000000 40000000 00000004 00000001 0x3667f700: 00000000 5ffa109f 3460fea8 34600005 0x3667f710: 000005ea 3460ffa0 00000010 38e68ec8 0x3667f720: 3865dd98 38e682c0 00000001 38e68338 0x3667f730: 00000007 3a416e6c 3895feac 5ffa109f 0x3667f740: 3460fea8 34600006 00000bb5 38e68ec8 0x3667f750: 00000010 3895ffd0 3a415568 38e68338 Instructions: (pc=0x5ffa1049) 0x5ffa1039: ff 8b c7 be 04 00 00 00 8b 4b 04 8b 6b 08 03 c8 0x5ffa1049: 8b 2c 28 83 c0 04 8b 11 89 29 8b 4b 08 4e 89 54 Stack: [0x36580000,0x36680000], sp=0x3667f6e0, free space=3fd3667f23ck Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) C [NCSEcw.dll+0x1049] [error occurred during error reporting (printing native stack), id 0xc0000005] Java frames: (J=compiled Java code, j=interpreted, Vv=VM code) j com.ermapper.ecw.JNCSFile.ECWReadImageRGBA([III)I+0 j com.ermapper.ecw.JNCSFile.readImageRGBA([III)I+4 j com.ermapper.ecw.JNCSRenderer.ecwReadImage(IIDDDD)Z+98 j com.ermapper.ecw.JNCSRenderer.drawImage(Ljava/awt/Graphics;IIIIDDDDLjava/awt/image/ImageObserver;)V+39 j com.esrifrance.moje.ecw.ECWLayer.drawAvecRenderer(Lcom/esri/mo2/map/dpy/DisplayArea;)V+286 j com.esrifrance.moje.ecw.ECWLayer.drawWithinScale(Lcom/esri/mo2/map/dpy/DisplayArea;I)V+63 j com.esri.mo2.map.dpy.BaseLayer.draw(Lcom/esri/mo2/map/dpy/DisplayArea;I)V+16 j com.esri.mo2.map.dpy.BaseDisplayManager$d_.a(Lcom/esri/mo2/map/dpy/Layer;)V+18 j com.esri.mo2.map.dpy.BaseDisplayManager$d_$a_.visiting(Lcom/esri/mo2/map/dpy/Layer;)Z+5 J com.esri.mo2.map.dpy.BaseGroupLayer.a(Lcom/esri/mo2/map/dpy/LayerVisitor;ZI)V J com.esri.mo2.map.dpy.BaseGroupLayer.a(Lcom/esri/mo2/map/dpy/LayerVisitor;)V j com.esri.mo2.map.dpy.BaseGroupLayer.traverse(Lcom/esri/mo2/map/dpy/LayerVisitor;Z)V+37 j com.esri.mo2.map.dpy.BaseDisplayManager$d_.m()V+15 j com.esri.mo2.map.dpy.BaseDisplayManager$d_.run()V+49 j com.esri.mo2.sys.tp.ThreadPool$a_.run()V+39 v ~StubRoutines::call_stub --------------- P R O C E S S --------------- Java Threads: ( => current thread ) 0x33855c00 JavaThread "RetrieveThread-31" [_thread_in_native, id=2236, stack(0x3c880000,0x3c980000)] 0x34788400 JavaThread "Thread-17" [_thread_in_native, id=2120, stack(0x3b2a0000,0x3b3a0000)] 0x34723c00 JavaThread "Image Animator 0" daemon [_thread_blocked, id=960, stack(0x3b1a0000,0x3b2a0000)] 0x33892400 JavaThread "Timer-0" [_thread_blocked, id=1664, stack(0x38660000,0x38760000)] 0x34796400 JavaThread "Swing-Shell" daemon [_thread_blocked, id=2500, stack(0x36990000,0x36a90000)] 0x33894800 JavaThread "Pool-2" [_thread_blocked, id=2440, stack(0x36680000,0x36780000)] =>0x33893800 JavaThread "Pool-1" [_thread_in_native, id=2244, stack(0x36580000,0x36680000)] 0x342b5400 JavaThread "Pool-0" [_thread_blocked, id=612, stack(0x36480000,0x36580000)] 0x34859400 JavaThread "Thread-6" daemon [_thread_in_native, id=2044, stack(0x36380000,0x36480000)] 0x342e9800 JavaThread "DispatcherThread-4" [_thread_blocked, id=2232, stack(0x35680000,0x35780000)] 0x346e5c00 JavaThread "TimerQueue" daemon [_thread_blocked, id=2004, stack(0x34c50000,0x34d50000)] 0x346c5800 JavaThread "AWT-EventQueue-0" [_thread_blocked, id=792, stack(0x34b50000,0x34c50000)] 0x34208000 JavaThread "AWT-Windows" daemon [_thread_in_native, id=2452, stack(0x344f0000,0x345f0000)] 0x34230400 JavaThread "AWT-Shutdown" [_thread_blocked, id=744, stack(0x343f0000,0x344f0000)] 0x34195800 JavaThread "Java2D Disposer" daemon [_thread_blocked, id=2180, stack(0x342f0000,0x343f0000)] 0x33881000 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=2420, stack(0x33ef0000,0x33ff0000)] 0x3387b400 JavaThread "CompilerThread0" daemon [_thread_blocked, id=2292, stack(0x33df0000,0x33ef0000)] 0x33879c00 JavaThread "Attach Listener" daemon [_thread_blocked, id=2020, stack(0x33cf0000,0x33df0000)] 0x33878400 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=1404, stack(0x33bf0000,0x33cf0000)] 0x33868400 JavaThread "Finalizer" daemon [_thread_blocked, id=2436, stack(0x33af0000,0x33bf0000)] 0x33863800 JavaThread "Reference Handler" daemon [_thread_blocked, id=2404, stack(0x339f0000,0x33af0000)] 0x00877400 JavaThread "main" [_thread_blocked, id=2280, stack(0x00030000,0x00130000)] Other Threads: 0x33860c00 VMThread [stack: 0x338f0000,0x339f0000] [id=2364] 0x3388c000 WatcherThread [stack: 0x33ff0000,0x340f0000] [id=2384] VM state:not at safepoint (normal execution) VM Mutex/Monitor currently owned by a thread: None Heap def new generation total 53248K, used 13986K [0x02940000, 0x06300000, 0x117e0000) eden space 47360K, 29% used [0x02940000, 0x036e8818, 0x05780000) from space 5888K, 0% used [0x05780000, 0x05780000, 0x05d40000) to space 5888K, 0% used [0x05d40000, 0x05d40000, 0x06300000) tenured generation total 118120K, used 70871K [0x117e0000, 0x18b3a000, 0x2f540000) the space 118120K, 59% used [0x117e0000, 0x15d15df0, 0x15d15e00, 0x18b3a000) compacting perm gen total 29696K, used 29522K [0x2f540000, 0x31240000, 0x33540000) the space 29696K, 99% used [0x2f540000, 0x31214ac8, 0x31214c00, 0x31240000) No shared spaces configured. Dynamic libraries: 0x00400000 - 0x00455000 C:\Program Files\Sipa2010\Sipa.exe 0x78460000 - 0x784e1000 C:\WINNT\system32\ntdll.dll 0x78ed0000 - 0x78f32000 C:\WINNT\system32\ADVAPI32.dll 0x77e70000 - 0x77f34000 C:\WINNT\system32\KERNEL32.DLL 0x770c0000 - 0x77131000 C:\WINNT\system32\RPCRT4.DLL 0x77e00000 - 0x77e65000 C:\WINNT\system32\USER32.dll 0x77f40000 - 0x77f7c000 C:\WINNT\system32\GDI32.DLL 0x77810000 - 0x77817000 C:\WINNT\system32\VERSION.dll 0x75950000 - 0x75956000 C:\WINNT\system32\LZ32.DLL 0x6d8b0000 - 0x6db47000 c:\program files\sipa2010\jre\bin\client\jvm.dll 0x77540000 - 0x77571000 C:\WINNT\system32\WINMM.dll 0x7c340000 - 0x7c396000 C:\WINNT\system32\MSVCR71.dll 0x6d860000 - 0x6d86c000 c:\program files\sipa2010\jre\bin\verify.dll 0x6d3e0000 - 0x6d3ff000 c:\program files\sipa2010\jre\bin\java.dll 0x6d340000 - 0x6d348000 c:\program files\sipa2010\jre\bin\hpi.dll 0x68ea0000 - 0x68eab000 C:\WINNT\system32\PSAPI.DLL 0x6d8a0000 - 0x6d8af000 c:\program files\sipa2010\jre\bin\zip.dll 0x6d0b0000 - 0x6d1fa000 C:\Program Files\Sipa2010\jre\bin\awt.dll 0x777f0000 - 0x7780e000 C:\WINNT\system32\WINSPOOL.DRV 0x793c0000 - 0x793d1000 C:\WINNT\system32\MPR.DLL 0x75e00000 - 0x75e1a000 C:\WINNT\system32\IMM32.dll 0x77a40000 - 0x77b37000 C:\WINNT\system32\ole32.dll 0x71710000 - 0x71794000 C:\WINNT\system32\COMCTL32.dll 0x6e350000 - 0x6e356000 C:\WINNT\system32\INDICDLL.dll 0x77580000 - 0x777cf000 C:\WINNT\system32\shell32.dll 0x77290000 - 0x772f6000 C:\WINNT\system32\SHLWAPI.DLL 0x78000000 - 0x78045000 C:\WINNT\system32\msvcrt.dll 0x6d2e0000 - 0x6d334000 C:\Program Files\Sipa2010\jre\bin\fontmanager.dll 0x6d6c0000 - 0x6d6d3000 C:\Program Files\Sipa2010\jre\bin\net.dll 0x74fb0000 - 0x74fc4000 C:\WINNT\system32\WS2_32.dll 0x74fa0000 - 0x74fa8000 C:\WINNT\system32\WS2HELP.DLL 0x6d6e0000 - 0x6d6e9000 C:\Program Files\Sipa2010\jre\bin\nio.dll 0x77830000 - 0x7783c000 C:\WINNT\System32\rnr20.dll 0x77970000 - 0x77994000 C:\WINNT\system32\DNSAPI.DLL 0x74fd0000 - 0x74fd9000 C:\WINNT\system32\WSOCK32.DLL 0x77310000 - 0x77323000 C:\WINNT\system32\iphlpapi.dll 0x774f0000 - 0x774f5000 C:\WINNT\system32\ICMP.DLL 0x34da0000 - 0x34db7000 C:\WINNT\system32\MPRAPI.DLL 0x750d0000 - 0x750df000 C:\WINNT\system32\SAMLIB.DLL 0x7ccc0000 - 0x7cd10000 C:\WINNT\system32\NETAPI32.DLL 0x78fb0000 - 0x78fbf000 C:\WINNT\system32\Secur32.dll 0x77be0000 - 0x77bf1000 C:\WINNT\system32\NTDSAPI.dll 0x77940000 - 0x7796b000 C:\WINNT\system32\WLDAP32.DLL 0x75140000 - 0x75146000 C:\WINNT\system32\NETRAP.dll 0x779a0000 - 0x77a3b000 C:\WINNT\system32\OLEAUT32.DLL 0x77380000 - 0x773b0000 C:\WINNT\system32\ACTIVEDS.DLL 0x77350000 - 0x77373000 C:\WINNT\system32\ADSLDPC.DLL 0x77820000 - 0x7782e000 C:\WINNT\system32\RTUTILS.DLL 0x783c0000 - 0x78451000 C:\WINNT\system32\SETUPAPI.DLL 0x78d20000 - 0x78d83000 C:\WINNT\system32\USERENV.DLL 0x774b0000 - 0x774e3000 C:\WINNT\system32\RASAPI32.DLL 0x77490000 - 0x774a1000 C:\WINNT\system32\RASMAN.DLL 0x77500000 - 0x77522000 C:\WINNT\system32\TAPI32.DLL 0x77330000 - 0x77349000 C:\WINNT\system32\DHCPCSVC.DLL 0x777d0000 - 0x777d8000 C:\WINNT\System32\winrnr.dll 0x66210000 - 0x66219000 C:\WINNT\system32\netware\NWWS2NDS.DLL 0x50d50000 - 0x50d98000 C:\WINNT\system32\NETWIN32.DLL 0x50d00000 - 0x50d15000 C:\WINNT\system32\CLNWIN32.DLL 0x50df0000 - 0x50e10000 C:\WINNT\system32\LOCWIN32.DLL 0x50db0000 - 0x50ddc000 C:\WINNT\system32\NCPWIN32.dll 0x66220000 - 0x6622c000 C:\WINNT\system32\netware\NWWS2SLP.DLL 0x66250000 - 0x66257000 C:\WINNT\system32\NWSRVLOC.dll 0x74f50000 - 0x74f6e000 C:\WINNT\system32\msafd.dll 0x74f90000 - 0x74f97000 C:\WINNT\System32\wshtcpip.dll 0x777e0000 - 0x777e5000 C:\WINNT\system32\rasadhlp.dll 0x6d250000 - 0x6d273000 C:\Program Files\Sipa2010\jre\bin\dcpr.dll 0x7ca00000 - 0x7ca23000 C:\WINNT\system32\rsaenh.dll 0x77410000 - 0x77489000 C:\WINNT\system32\CRYPT32.dll 0x77400000 - 0x77410000 C:\WINNT\system32\MSASN1.DLL 0x72c60000 - 0x72ce6000 C:\WINNT\system32\CLBCATQ.DLL 0x77840000 - 0x77880000 C:\WINNT\system32\cscui.dll 0x77090000 - 0x770b3000 C:\WINNT\system32\CSCDLL.DLL 0x76dc0000 - 0x76dd2000 C:\WINNT\system32\mydocs.dll 0x36cf0000 - 0x36e3a000 C:\WINNT\system32\SHDOCVW.DLL 0x71e40000 - 0x71e8d000 C:\WINNT\system32\docprop2.dll 0x6a6f0000 - 0x6a710000 C:\WINNT\system32\MSVFW32.DLL 0x747f0000 - 0x74806000 C:\WINNT\system32\AVIFIL32.DLL 0x773e0000 - 0x773f3000 C:\WINNT\system32\MSACM32.dll 0x6ff60000 - 0x6ff65000 C:\WINNT\system32\faxshell.dll 0x37250000 - 0x372ab000 C:\Program Files\Fichiers communs\Adobe\Acrobat\ActiveX\PDFShell.dll 0x78130000 - 0x781cb000 C:\WINNT\system32\MSVCR80.dll 0x750e0000 - 0x750ec000 C:\WINNT\System32\ntlanman.dll 0x75190000 - 0x751a5000 C:\WINNT\System32\NETUI0.DLL 0x75150000 - 0x75188000 C:\WINNT\System32\NETUI1.DLL 0x58200000 - 0x582d1000 C:\WINNT\system32\NOVNPNT.DLL 0x50d20000 - 0x50d4d000 C:\WINNT\system32\CALWIN32.DLL 0x50da0000 - 0x50dab000 C:\WINNT\system32\CLXWIN32.DLL 0x58300000 - 0x5833b000 C:\WINNT\system32\MAPBASE.dll 0x58380000 - 0x583be000 C:\WINNT\system32\NWSHLXNT.dll 0x6a400000 - 0x6a41c000 C:\WINNT\system32\NLS\FRANCAIS\MAPBASER.DLL 0x37500000 - 0x3751d000 C:\WINNT\system32\NLS\FRANCAIS\NWSHLXNR.DLL 0x37520000 - 0x37596000 C:\WINNT\system32\NLS\FRANCAIS\NOVNPNTR.DLL 0x375a0000 - 0x376a2000 C:\Program Files\Sipa2010\jre\bin\esri_jni_mrsid.dll 0x377c0000 - 0x37ac1000 C:\Program Files\Sipa2010\jre\bin\mlib_jai.dll 0x5ff80000 - 0x5ff98000 C:\Program Files\Sipa2010\jre\bin\NCSUtil.dll 0x77910000 - 0x77933000 C:\WINNT\system32\IMAGEHLP.dll 0x5ffd0000 - 0x5ffe4000 C:\Program Files\Sipa2010\jre\bin\NCScnet.dll 0x5ffa0000 - 0x5ffcc000 C:\Program Files\Sipa2010\jre\bin\NCSEcw.dll 0x69a00000 - 0x69a1d000 C:\WINNT\system32\NTMARTA.DLL 0x6d500000 - 0x6d524000 C:\Program Files\Sipa2010\jre\bin\jpeg.dll VM Arguments: jvm_args: -Xms150000000 -Xmx750000000 java_command: Launcher Type: generic Environment Variables: CLASSPATH=C:\Program Files\Sipa2010\impression.jar;C:\Program Files\Sipa2010\lib\moje21\jsde90_sdkres.jar;C:\Program Files\Sipa2010\lib\fop\xml-apis.jar;C:\Program Files\Sipa2010\SIPA.jar;C:\Program Files\Sipa2010\lib\fop\fop.jar;C:\Program Files\Sipa2010\lib\moje21\esri_mo21img.jar;C:\Program Files\Sipa2010\lib\log4j-1.2.7.jar;C:\Program Files\Sipa2010\lib\moje21\esri_mo21rpf.jar;C:\Program Files\Sipa2010\lib\moje21\mlibwrapper_jai.jar;C:\Program Files\Sipa2010\lib\fop\xercesImpl-2.2.1.jar;C:\Program Files\Sipa2010\lib\MDateSelector.jar;C:\Program Files\Sipa2010\lib\moje21\esri_mo21.jar;C:\Program Files\Sipa2010\lib\moje21\jsde90_sdk.jar;C:\Program Files\Sipa2010\lib\moje21\esri_mo21res.jar;C:\Program Files\Sipa2010\lib\moje21\esri_xmlkit.jar;C:\Program Files\Sipa2010\lib\moje21\jai_codec.jar;C:\Program Files\Sipa2010\lib\moje21\jai_core.jar;C:\Program Files\Sipa2010\lib\moje21\jpe90_sdk.jar;C:\Program Files\Sipa2010\lib\moje21\esri_mo21vpf.jar;C:\Program Files\Sipa2010\lib\fop\avalon-framework-cvs-20020806.jar;C:\Program Files\Sipa2010\lib\fop\batik.jar;C:\Program Files\Sipa2010\lib\classes12.jar;C:\Program Files\Sipa2010\lib\moje21\esri_mo21cad.jar;C:\Program Files\Sipa2010\lib\pdfbox-sword.jar;C:\Program Files\Sipa2010\lax.jar;C:\Program Files\Sipa2010\ecwermapperjni.jar; PATH=C:\oracle\ora81\bin;C:\Program Files\Oracle\jre\1.1.7\bin;C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem;C:\WINNT\system32\nls;C:\WINNT\system32\nls\FRANCAIS;C:\Program Files\Novell\ZENworks USERNAME=David OS=Windows_NT PROCESSOR_IDENTIFIER=x86 Family 15 Model 4 Stepping 1, GenuineIntel --------------- S Y S T E M --------------- OS: Windows 2000 Build 2195 Service Pack 4 CPU:total 2 (1 cores per cpu, 2 threads per core) family 15 model 4 stepping 1, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ht Memory: 4k page, physical 1047020k(341768k free), swap 1719680k(1051752k free) vm_info: Java HotSpot(TM) Client VM (16.3-b01) for windows-x86 JRE (1.6.0_20-b02), built on Apr 12 2010 13:52:23 by "java_re" with MS VC++ 7.1 (VS2003) time: Fri Jun 18 10:33:04 2010 elapsed time: 59 seconds