Tomcat 6 在 CentOS 5 下崩溃

Tomcat 6 在 CentOS 5 下崩溃

我们有 CentOS 5、OpenJDK 1.6 和 Tomcat 6。

每隔一两周,我们的服务器就会发生严重崩溃,并在 catalina.out 中输出以下输出:

Exception while removing reference: java.lang.NullPointerException
java.lang.NullPointerException
        at sun.font.FreetypeFontScaler.disposeNativeScaler(Native Method)
        at sun.font.FreetypeFontScaler.dispose(FreetypeFontScaler.java:167)
        at sun.java2d.Disposer.run(Disposer.java:146)
        at java.lang.Thread.run(Thread.java:636)
Exception while removing reference: java.lang.NullPointerException
java.lang.NullPointerException
        at sun.font.FreetypeFontScaler.disposeNativeScaler(Native Method)
        at sun.font.FreetypeFontScaler.dispose(FreetypeFontScaler.java:167)
        at sun.java2d.Disposer.run(Disposer.java:146)
        at java.lang.Thread.run(Thread.java:636)
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00002aaaab621c28, pid=12911, tid=1158957376
#
# JRE version: 6.0_17-b17
# Java VM: OpenJDK 64-Bit Server VM (14.0-b16 mixed mode linux-amd64 )
# Derivative: IcedTea6 1.7.5
# Distribution: Custom build (Wed Oct 13 13:04:40 EDT 2010)
# Problematic frame:
# J  java.lang.String.getBytes(Ljava/lang/String;)[B
#
# An error report file with more information is saved as:
# /tmp/hs_err_pid12911.log
#
# If you would like to submit a bug report, please include
# instructions how to reproduce the bug and visit:
#   http://icedtea.classpath.org/bugzilla
#

有人能告诉我们该如何解决这个问题吗?

提前致谢!

答案1

OpenJDK 通常会出现很多问题。我建议您安装 Sun JDK。

  • 从 Oracle/Sun 下载 JDKhttp://www.oracle.com/technetwork/java/javase/downloads/index.html
  • 安装它。注意:安装将放置在您运行它的任何位置。因此,如果您从桌面运行它,它将安装在那里。
  • 如果您想使用替代方法将 Oracle JDK 添加为默认 Java 程序:

    替代方案——安装/usr/bin/java java /opt/jdk1.6.0_25/bin/java 2

    替代方案--config java

    选择Oracle / SUN JDK

  • 在你的 tomcat 中设置 JAVA_HOME,编辑 catalina.sh 并添加:

    导出JAVA_HOME=/opt/jdk1.6.0_25

答案2

OpenJDK 的错误跟踪器中最近有一些与此崩溃相关的活动: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1326 http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=2160

目标修复版本是 icedtea-2.5.4,它应该映射到 u71b14 之后的 OpenJDK7 版本(因为u71b14 对应于 icedtea-2.5.3)。

相关内容