Java 发生错误后如何重新启动应用程序?
可能重复:Java 发生错误后如何重新启动应用程序?,java,process,restart,uncaught-exception,Java,Process,Restart,Uncaught Exception,可能重复: 您好,我正在用Java开发一个编辑器,我希望它能够在出现错误后重新启动整个应用程序 我使用Thread.setDefaultUncaughtExceptionHandler设置异常处理程序,并在那里显示一个消息框,这很简单。我需要的是以某种方式关闭应用程序,然后用相同的文件重新启动它 有什么想法吗?通过调用Runtime.exec(“my_startup_命令”)启动应用程序 不要等待终止,不要读取Processoutput。这里有一个旧线程,可能具有相同的场景:您可以使用 Run
您好,我正在用Java开发一个编辑器,我希望它能够在出现错误后重新启动整个应用程序 我使用
Thread.setDefaultUncaughtExceptionHandler
设置异常处理程序,并在那里显示一个消息框,这很简单。我需要的是以某种方式关闭应用程序,然后用相同的文件重新启动它
有什么想法吗?通过调用
Runtime.exec(“my_startup_命令”)启动应用程序代码>
不要等待终止,不要读取Processoutput。这里有一个旧线程,可能具有相同的场景:您可以使用
Runtime.getRuntime().exec(“java-jar”location.of.your.jar”)
要获取jar位置,请执行以下操作:
当我们想在清晨醒来时,我们会做什么?我们会告诉家里的人把我们叫醒,或者我们会设置一个闹钟。所以同样的情况也适用于这种情况。从主应用程序中创建一个完全独立的应用程序,它将作为“调用者”工作“用于您的主要应用程序。在Restart命令下,只需使用所有命令行参数启动invoker应用程序,然后退出主应用程序。然后在一段时间后(无论您设置什么时间),您的调用程序应用程序将启动您的主应用程序
public static File getJarFile(Class main) {
try {
File f = new File(main.getProtectionDomain().getCodeSource().getLocation().toURI());
return f;
} catch (URISyntaxException ex) {
return null;
}
}