gpt4 book ai didi

java - 如何捕获ExceptionInInitializerError?

转载 作者:行者123 更新时间:2023-12-02 03:30:27 26 4
gpt4 key购买 nike

我想安装某种全局处理程序来捕获任何ExceptionInInitializerError,当加载某个类时,它可能从任何静态 block 抛出。目前,它将堆栈跟踪转储到 stderr 并退出应用程序。我想使用我的日志框架记录堆栈跟踪,然后退出应用程序。可能吗?

最佳答案

看起来 Thread.UncaughtExceptionHandler 就是您正在寻找的。

这个answer将为您提供更多信息。

本质上,您需要尽快安装默认异常处理程序:

        Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
public void uncaughtException(Thread t, Throwable e) {
if (e instanceof ExceptionInInitializerError) {
// do something with you're exception
// and than close application
System.exit(-1); // passing
}
}
});

关于java - 如何捕获ExceptionInInitializerError?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38170461/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com