可能重复:
how to restart java application, remembering its command line arguments
嗨,我正在用Java开发一个编辑器,我希望它能够在出错后重启整个应用程序。
我使用Thread.setDefaultUncaughtExceptionHandler
设置了异常处理程序,我在那里显示一个消息框,这很容易。我需要的是以某种方式关闭应用程序,然后使用相同的文件再次启动它。
有什么想法吗?
答案 0 :(得分:1)
答案 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命令下,只需使用所有命令行参数启动调用程序应用程序并退出主应用程序。然后经过一段时间(无论你设置的时间),你的调用程序应用程序将启动你的主应用程序。