我有一个使用swing的Java应用程序。我找到了一种方法来捕捉应用程序中所有未捕获的异常(见下文)。我想记录一条消息,为用户显示一个带有消息的对话框,并终止应用程序。问题是,我试图捕捉的是一些swing异常。由于Swing线程已停止,因此无法在UncaughtExceptionHandler中捕获异常后尝试显示对话框。有没有办法显示一个对话框?创建一个新的swing线程或类似的东西?
谢谢
Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
boolean alreadyCaught = false;
public void uncaughtException(Thread t, Throwable e) {
if (alreadyCaught)
return;
alreadyCaught = true;
e.printStackTrace();
//show Dialog
}
});
完全可以从默认的未捕获异常处理程序显示对话框。我们的一款产品在过去5年中一直在使用这种机制,没有出现任何问题。
当由于异常杀死当前EDT而更换EDT时,我们有一个解决问题的方法。我们使用
new Thread( new Runnable() {
public void run() {
EventQueue.invokeLater( aRunnable );
}
} ).start();
这允许用新的EDT替换EDT,并在新创建的EDT上运行可运行。
对于一个大学项目,我们需要在Java的5人小组中制作一个游戏。当我们用3D第一人称编写游戏时,我想使用lwjgl。我在运行Ubuntu的家用计算机上编写了一个测试程序。然而,我把它带到了uni,并试图在ArchLinux的机器上运行它,当试图调用Display.create()方法时,它抛出了一个异常。 这是堆栈跟踪: 无法创建可绘制组织。lwjgl。LWJGLException:X Error-
我对Java/Spring领域相当陌生,我正在尝试在我的Spring Boot应用程序中使用@ControllerAdvise。ControllerAdvision捕获异常,但不显示我的自定义响应。 下面是引发异常的RestController的快照 以下是@ControllerAdvice
你可以使用raise语句 引发 异常。你还得指明错误/异常的名称和伴随异常 触发的 异常对象。你可以引发的错误或异常应该分别是一个Error或Exception类的直接或间接导出类。 如何引发异常 例13.2 如何引发异常 #!/usr/bin/python # Filename: raising.py classShortInputException(Exception): '''A u
问题内容: 当我使用下面的代码时,在什么情况下会得到异常。 任何人都可以帮忙吗???????? 问题答案: HTTP状态代码是服务器的响应,因此,如果您控制服务器,则可以使其返回所需的任何错误。如果您无法控制服务器,则可以尝试发送错误/无效的请求,以便服务器进行投诉。 在服务器端这样的事情:
问题内容: 鉴于此Java 8代码 我们如何正确地将其委派给方法调用的堆栈?(简而言之,如何使此方法抛出此错误?) Java中的Lambda看起来对错误处理不是很友好… 问题答案: 我的方法是从lambda 偷偷地 将其抛出,但是要小心,使该方法在其子句中声明它。使用我在这里发布的课程: 这样,您可以有效地使编译器仅“移开视线”,从而在代码中的某个位置禁用其异常检查,但是通过在方法中声明异常,可以