待解決:A fatal error has been detected by the Java Runtime Environment
Tomcat 崩潰日誌:
#
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x1db7ae66, pid=42264, tid=14148
#
# JRE version: 7.0_21-b11
# Java VM: Java HotSpot(TM) Client VM (23.21-b01 mixed mode windows-x86 )
# Problematic frame:
# C [plcommpro.dll+0xae66] GetDeviceData+0x1a6
#
# 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 (0x1bce3c00): JavaThread "deviceSend-pool-0" [_thread_in_native, id=14148, stack(0x1bc40000,0x1bc90000)]
siginfo: ExceptionCode=0xc0000005, reading address 0x00001480
以上問題原因為:
Java呼叫的DLL(32位)與JDK(64位)版本不一致,Tomcat使用JDK版本為64但是環境變數配置的JDK是32位,只要保證 Tomcat 和使用的DLL版本是一致的即可。