错误后如何重启应用程序?

时间:2010-12-08 10:19:51

标签: java process restart uncaught-exception

  

可能重复:
  how to restart java application, remembering its command line arguments

嗨,我正在用Java开发一个编辑器,我希望它能够在出错后重启整个应用程序。

我使用Thread.setDefaultUncaughtExceptionHandler设置了异常处理程序,我在那里显示一个消息框,这很容易。我需要的是以某种方式关闭应用程序,然后使用相同的文件再次启动它。

有什么想法吗?

4 个答案:

答案 0 :(得分:1)

这是一个可能具有相同场景的旧线程:how to restart java application, remembering its command line arguments

答案 1 :(得分:1)

你可以用

完成
  

Runtime.getRuntime()。exec(“java -jar”location.of.your.jar“);

获取jar位置:

public static File getJarFile(Class main) {
    try {
        File f = new File(main.getProtectionDomain().getCodeSource().getLocation().toURI());
        return f;
    } catch (URISyntaxException ex) {
        return null;
    }
}

答案 2 :(得分:0)

通过调用Runtime.exec("my_startup_command");启动应用程序 不要等待终止,不要阅读Processoutput。

答案 3 :(得分:0)

当我们想要在清晨醒来时我们会怎么做?我们告诉我们家里的某个人叫醒我们或者我们设置闹钟。所以同样可以应用于这种情况。从主应用程序中创建一个完全独立的应用程序,它将作为主应用程序的“调用者”。在Restart命令下,只需使用所有命令行参数启动调用程序应用程序并退出主应用程序。然后经过一段时间(无论你设置的时间),你的调用程序应用程序将启动你的主应用程序。