我正在开发 Java 产品。客户声称应用程序在任意时间后崩溃。由于是崩溃,我们无法在日志中找到任何信息。
是否有任何工具、方法可以找出此类问题的原因?
我们可以在代码端做些什么来获取有关此类程序崩溃的更多信息吗?
我们可以为 JVM 启用“DEBUG”模式吗?如果是这样,我在哪里可以找到 JVM 日志文件/故障转储?
是否有处理此类问题的已知程序?
如果您遇到了这个问题,您的故障排除程序是什么?
最佳答案
我很难相信 JVM 在崩溃时没有任何输出。首先仔细仔细地查看您的运行脚本,看看您是否只是忽略了输出。如果 JVM 由于未处理的异常而结束,我相信它会将异常输出到标准输出。如果它严重崩溃(堆损坏等),它会向 stderr 输出一些东西。您的应用程序内日志记录很有用,但您也应该记录任何发送到 stdout 和 stderr 的输出(您没有定义应用程序运行的平台,但这基本上适用于所有平台)。
除此之外,您可以传递大量非标准选项来定义错误文件的位置等,请参阅 Java HotSpot VM Options .
关于java - 我应该如何解决 "Program Crashing"问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1486094/