【发布时间】:2014-09-17 02:10:58
【问题描述】:
对于我创建的 runnable Jar programs,如果我从命令提示符 (java -jar myprogram.jar) 运行它,我可以读取未处理的异常。
示例代码:
public static void main(String args[]) {
try {
EntireProgram();
} catch (Throwable t) {
throw new Error("somehow our error handling code has errors");
}
}
public static void EntireProgram() {
System.out.println(1 / 0);
}
命令行输出:
但是,如果我通过双击运行 Jar 程序(大多数最终用户应该这样),未处理的异常将保持静默。我注意到这与“本机 Windows 程序”形成对比,我认为后者具有由操作系统默认处理程序(模式对话框消息)处理的未处理异常:
以这种方式处理未处理的异常的好处是用户将知道发生了错误(并可能报告它,希望如此)。
如何使我的程序的未处理异常以这种方式处理?
【问题讨论】:
标签: java windows deployment error-handling executable-jar