JVM崩溃。如何获取错误日志或核心转储

问题描述 投票:0回答:2

我有一个使用jna调用本机dll的Java应用程序。执行我在Java中的回调并抛出“ java平台se二进制文件已停止”对话框后,程序在中间使JVM崩溃。 Java控制台日志没有用,那里什么也没有。如何在窗口中获取核心转储或其他有用的日志,以找出问题及其原因。在临时文件夹中寻找hs_err日志,但找不到它。

java jvm jna coredump jvm-crash
2个回答
0
投票

hs_err文件通常写入JVM进程的“当前目录”中。如果该目录不可被用户写入,则将文件写入一个临时目录。您还可以告诉JVM将致命错误报告写入指定的文件。

仅当“核心文件大小” ulimit(或等效值)足够大且文件空间足够时,才会写入核心转储。默认ulimit为零。

更多信息:


0
投票

使用-XX:ErrorFile指定错误文件。

来自Location of Fatal Error Log

[要指定将在何处创建日志文件,请使用产品标记-XX:ErrorFile = file,其中file代表日志文件位置的完整路径。

另外,这个:

如果未指定-XX:ErrorFile = file标志,则默认日志文件名称为hs_err_pid.log,其中pid是进程的PID。

© www.soinside.com 2019 - 2024. All rights reserved.