【问题标题】:Do not save workbench state in a eclipse RCP app不要在 Eclipse RCP 应用程序中保存工作台状态
【发布时间】:2016-09-01 21:45:56
【问题描述】:

我正在使用 Eclipse RCP 开发一个应用程序。此应用程序在启动时应始终显示特定的视角。但是应用程序会保存它的工作台状态,并且在重新启动时它会显示与关闭时相同的透视图。我尝试添加

public void initialize(IWorkbenchConfigurer configurer){
    configurer.setSaveAndRestore(false);
}

到我的ApplicationWorkbenchAdvisor 班级,但它不起作用。我也想过选择正确的视角,但是不知道在哪里添加这么一段代码。

我的应用程序如何在启动时始终显示相同的视角?

【问题讨论】:

  • 您可能必须手动删除保存的工作台状态文件一次以清除旧的保存状态。
  • 我试过了,但没有效果:我从“清除工作区”选项开始,看到“workbench.xmi”文件是如何被删除的,但它在关闭应用程序后立即出现,甚至虽然 setAndRestore 设置为 false。
  • 将创建 xmi 文件,但不应包含作为文件一部分存储的 3.x 状态。您可以尝试使用 -clearPersistedState 标志来完全忽略 xmi 文件(不确定这是否适用于 3.x 应用程序)。
  • 如果您的意思是将-clearPersistedState 添加到程序参数中,那么这不适用于 3.x 应用程序。

标签: java eclipse eclipse-rcp


【解决方案1】:

对你来说太晚了,但可能对其他人有用。

正如@Aiden 所说,我们将-clearPersistedState 添加到运行配置中的程序参数中。

它在 e4 中使用 Eclipse Neon 4.6 为我们工作。

【讨论】:

    【解决方案2】:

    我发现如果你总是想要相同的启动视角,你可以在启动时设置默认视角。

    public class Application implements IApplication {
        public Object start(IApplicationContext content){
            PlatformUI.getWorkbench().getPerspectiveRegistry().setDefaultPerspective("youperspective here");
    
            //other code...
        }
    
        //other code...
    }
    

    更新: 这仅在您在运行配置中启用“清除工作区”时才有效。我目前的解决方案是在程序启动期间删除工作台文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-11
      • 1970-01-01
      • 2017-07-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-09
      • 2013-09-29
      相关资源
      最近更新 更多