Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我在 RHEL 6.4 服务器上运行 JAVA 程序。程序异常终止,显示消息“Segmentation fault(Core dumped)”。但是我在运行程序的当前用户目录中找不到任何指示终止原因的文件。
在这种情况下如何调试以找到错误?
怀疑
根据我的理解,当程序尝试访问程序范围之外的内存地址时,会发生分段错误。我希望在 C 或 C++ 程序中看到这样的错误,但在 Java 中,由于没有指针,分段错误怎么可能发生。
分段错误如何可能。
这有几个可能的原因。JVM 本身或包中可能存在错误(其中一些是用 C 或 C++ 编写的)。这也可能是由于不兼容的组件一起使用的错误配置造成的。
根据经验,JVM 错误是其中最不可能的(尽管我见过一些)。
如果您在崩溃点捕获堆栈跟踪,这可能会为您提供一些关于崩溃发生的确切位置的线索。