为了账号安全,请及时绑定邮箱和手机立即绑定

如何重新启动Java应用程序?

如何重新启动Java应用程序?

慕容708150 2019-07-26 14:51:04
如何重新启动Java应用程序?如何重新启动Java AWT应用程序?我有一个按钮,我附加了一个事件处理程序。我应该使用什么代码来重启应用程序?我想做与Application.Restart()C#应用程序相同的事情。
查看完整描述

3 回答

?
慕沐林林

TA贡献2016条经验 获得超9个赞

当然可以重新启动Java应用程序。

以下方法显示了重新启动Java应用程序的方法:

public void restartApplication(){
  final String javaBin = System.getProperty("java.home") + File.separator + "bin" + File.separator + "java";
  final File currentJar = new File(MyClassInTheJar.class.getProtectionDomain().getCodeSource().getLocation().toURI());

  /* is it a jar file? */
  if(!currentJar.getName().endsWith(".jar"))
    return;

  /* Build command: java -jar application.jar */
  final ArrayList<String> command = new ArrayList<String>();
  command.add(javaBin);
  command.add("-jar");
  command.add(currentJar.getPath());

  final ProcessBuilder builder = new ProcessBuilder(command);
  builder.start();
  System.exit(0);}

基本上它执行以下操作:

  1. 找到java可执行文件(我在这里使用了java二进制文件,但这取决于你的要求)

  2. 找到应用程序(在我的情况下,使用MyClassInTheJar类来查找jar位置本身的jar)

  3. 构建一个命令来重启jar(在这种情况下使用java二进制文件)

  4. 执行吧!(从而终止当前的应用程序并重新启动它)


查看完整回答
反对 回复 2019-07-26
  • 3 回答
  • 0 关注
  • 2091 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号