0

我在我的 Windows 主机上安装了 Tomcat 7.0.27 64 位,并将 Pervasync 数据同步服务器部署到 Tomcat,以便将 Android 平板电脑上的 SQLite DB 与中央 Microsoft SQL 服务器同步。它最初运行良好,但有时 Tomcat 只是随机崩溃。从Tomcat日志中我看到了这个:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00000001800057c0, pid=2476, tid=336
#
# JRE version: 7.0-b147
# Java VM: Java HotSpot(TM) 64-Bit Server VM (21.0-b17 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# C  [tcnative-1.dll+0x57c0]
#
# Core dump written. Default location: C:\MySoftwares\apache-tomcat-7.0.27-windows-x64\apache-tomcat-7.0.27\bin\hs_err_pid2476.mdmp
#
# An error report file with more information is saved as:
# C:\MySoftwares\apache-tomcat-7.0.27-windows-x64\apache-tomcat-7.0.27\bin\hs_err_pid2476.log
#
# 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.
#

这真的是JVM中的错误还是其他什么?

4

1 回答 1

0

Tomcat 崩溃通常是由 JNI 库引起的。Pervasync 是纯 Java。所以首先要检查的是你是否正在加载 Tomcat Native 库。查看 Catalinna*.log 中是否有类似以下内容:

Apr 02, 2013 3:07:51 PM org.apache.catalina.core.AprLifecycleListener init
INFO: Loaded APR based Apache Tomcat Native library 1.1.27 using APR version 1.4.6.

也许您下载的二进制文件与您的硬件不兼容。重新编译库或切换到非本机 - 从 Tomcat 路径中删除库。

查看http://tomcat.apache.org/native-doc/了解更多关于 Apache Tomcat Native 库的信息。

于 2013-04-03T16:52:19.103 回答