在Linux上运行Java程序时出现分段错误

jua*_*uan 5 java linux

我在RHEL 6.4 Server上运行JAVA程序.程序异常终止显示消息"分段故障(核心转储)".但是,我找不到任何文件,指示在运行程序的当前用户目录中终止的原因.

在这种情况下如何调试以查找错误?

怀疑

根据我的理解,当程序试图访问程序范围之外的内存地址时,会发生分段错误.我希望在C或C++程序中看到这样的错误,但是在Java中,因为没有指针,如何分段错误是可能的.

NPE*_*NPE 3

分段错误怎么可能。

造成这种情况有几个可能的原因。JVM 本身或包(其中一些是用 C 或 C++ 编写的)中可能存在错误。这也可能是由于配置错误导致不兼容的组件一起使用。

根据经验,JVM bug 是其中可能性最小的(尽管我也见过一些)。

如果您在崩溃时捕获堆栈跟踪,这可能会为您提供一些有关崩溃具体发生位置的线索。