Ubuntu上的Java 1.6和1.7上的SIGSEGV 0xb

时间:2013-05-04 08:02:25

标签: java node.js ubuntu jvm sigsegv

我对Ubuntu 13.10(和Xubuntu 12.10)上的Java 1.6和Java 1.7都有非常恼人的问题,两者都是x64。 Debian 6.0 x64上没有出现我的问题。

我为每个JNI运行Java代码的nodejs应用程序运行一些测试代码(如果我理解正确的话,我不是代码的开发者)。开发人员说,它在他们的系统上没有任何问题。

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007f0aef63e2fb, pid=3442, tid=139685052057408
#
# JRE version: 7.0_21-b11
# Java VM: Java HotSpot(TM) 64-Bit Server VM (23.21-b01 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# V  [libjvm.so+0x5842fb]  JNI_ArgumentPusherVaArg::JNI_ArgumentPusherVaArg(_jmethodID*, __va_list_tag*)+0x1b
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.sun.com/bugreport/crash.jsp
#

完整日志在pastebin上:http://pastebin.com/bexYiHHJ

我正在使用VMWare Workstation 9.0.2来虚拟化Ubuntu 13.10 x64,Xubuntu 12.10 x64和Debian 6.0。我在Java 1.6中遇到了同样的错误。我也尝试过OPENJDK Java。它在Debian 6.0下使用内核2.8完全正常工作,但在Ubuntu 13.10和Xubuntu上不起作用(这里是内核3.5和3.8,但这真的很重要吗?)。

我现在能做什么?我在互联网和这个板上搜索了很多。有时它是硬件缺陷但我在这里虚拟化它可以在Debian上运行。有些人说要添加一些参数,但我真的不知道在哪里添加这些参数,因为我没有从命令行运行Java,它会自动在Node.JS应用程序中启动。

请帮助!

2 个答案:

答案 0 :(得分:1)

我有类似的问题,这个java参数解决了:-XX:-UseCompressedOops

答案 1 :(得分:0)

我不知道问题是什么,但我转而使用内核3.2作为工作系统的Debian 7版本。首先,我有同样的问题,但后来我安装了一个基本安装并下载了预编译的node.js应用程序。也许在我的GCC中出了点问题,我不知道。

如果有人遇到同样的问题并得到解决方案,那么了解原因是很好的。