即使在堆栈溢出错误中也显示整个堆栈跟踪

Show entire stack trace even in a stack overflow error

默认情况下,当 Java 程序(在这种情况下我只是在谈论一个简单的命令行程序,没有额外的框架或任何东西)崩溃时,异常会打印一个堆栈跟踪,这很有用。

然而,在堆栈溢出错误的情况下,深度似乎超过了某个任意限制,因为跟踪被切断了;结果是我只能看到陷入无限递归的代码(重复的长列表),而不是为其设置条件的调用代码,这是我需要追踪的错误我正在看。

有没有办法告诉 JVM“打印整个堆栈跟踪,我不在乎它有多长”?

运行 java -XX:MaxJavaStackTraceDepth=999999

default limit是1024。