gpt4 book ai didi

java - 如何从 Eclipse 中的线程中提取堆栈跟踪?

转载 作者:行者123 更新时间:2023-12-02 05:41:24 31 4
gpt4 key购买 nike

我对处理传递给线程池的可运行对象的错误感到非常困惑。

我正在按照书本做所有事情(从字面上看,我遵循 Goetz 的“实践中的并发”),并且我没有捕获 Eclipse 向我显示的任何错误,并且我得到了奇怪的 NoClassDefFoundErrors,即使我的构建路径看起来不错。

Weird NoClassDefFoundError even though my buildpath is fine

我尝试杀死我的本地存储库并重新克隆它以获取新的项目构建,但仍然收到错误。我的 try-catch 或 System.out.println 也都不起作用。 Eclipse 有什么方法可以让我更好地查看错误吗?或者一种真正让错误处理程序正常工作的方法?

//ThreadPool and runnable that is failing, even with error captures
MyPriorityThreadPool.execute(new RunWithPriority(priority) {
Throwable thrown = null;
@Override
public void run() {
try {
batch.buildData();
} catch (Exception e) {
thrown = e;
}
finally {
if (thrown != null) {
thrown.printStackTrace();
}
}
}
});
}

最佳答案

我不太确定您想要完成什么,但您在代码中没有捕获 NoClassDefFoundError 的原因是您捕获了 Exception > 而不是 ThrowableErrorExceptionError 更具体,不是 NoClassDefFoundError 继承自什么,因此 NoClassDefFoundError没有被您的 catch 表达式捕获。

关于java - 如何从 Eclipse 中的线程中提取堆栈跟踪?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24493811/

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