Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用';PlatformUI.getWorkbench().restart()';没有重新启动RCP产品_Java_Eclipse_Eclipse Rcp - Fatal编程技术网

Java 使用';PlatformUI.getWorkbench().restart()';没有重新启动RCP产品

Java 使用';PlatformUI.getWorkbench().restart()';没有重新启动RCP产品,java,eclipse,eclipse-rcp,Java,Eclipse,Eclipse Rcp,调用方法PlatformUI.getWorkbench().restart()时,应用程序只是关闭并拒绝重新启动产品 您的iaapplication需要在start方法中检查PlatformUI.createAndRunWorkbench中的返回代码: 最简单的是: int returnCode = PlatformUI.createAndRunWorkbench(display, advisor); if (returnCode == PlatformUI.RETURN_RESTART)

调用方法
PlatformUI.getWorkbench().restart()
时,应用程序只是关闭并拒绝重新启动产品

您的
iaapplication
需要在
start
方法中检查
PlatformUI.createAndRunWorkbench
中的返回代码:

最简单的是:

int returnCode = PlatformUI.createAndRunWorkbench(display, advisor);
if (returnCode == PlatformUI.RETURN_RESTART)
   return IApplication.EXIT_RESTART;

return IApplication.EXIT_OK;
最近的应用程序似乎使用了这一点:

private static final String SYSTEM_PROPERTY_EXIT_CODE = "eclipse.exitcode";

int returnCode = PlatformUI.createAndRunWorkbench(display, advisor);

if (returnCode == PlatformUI.RETURN_RESTART)
 {
   // eclipse.exitcode system property may be set to re-launch
   if (IApplication.EXIT_RELAUNCH.equals(Integer.getInteger(SYSTEM_PROPERTY_EXIT_CODE)))
      return IApplication.EXIT_RELAUNCH;

   return IApplication.EXIT_RESTART;
 }

return IApplication.EXIT_OK;

您是否编写了自己的
iaapplication
?没有,我只是调用了restart()@greg-449:除了调用restart()方法之外,我还需要实现什么特定的功能?您是否在Eclipse之外测试重启行为?我询问的原因是:如果您从Eclipse中启动RCP应用程序,那么Eclipse.exe能够检测到此重新启动,然后再次启动您的应用程序。当您自己启动VM时,您需要一些类似的行为-我想这就是@greg-449对
iaapplication
的想法。是的,我正在eclipse外部重新启动RCP产品(即,我导出了产品,并尝试重新启动product.exe)。您好@greg-449,即使修改了启动方法(从IAApplication实例派生的类的),我无法重新启动我的产品。我还尝试在远程调试模式下启动该产品,发现退出时断点未命中此方法。我是否遗漏了任何内容?是否确实正在使用
iaapplication
?我已发布了我对start方法的使用情况。这看起来很好。是否检查了.log是否有任何崩溃的元数据?可能还有安装“配置”目录中的任何xxx.log。