【问题标题】:SaveAllAction.class is missing org.eclipse.ui.workbench Plugin for eclipse 4.7.2SaveAllAction.class 缺少用于 Eclipse 4.7.2 的 org.eclipse.ui.workbench 插件
【发布时间】:2018-04-01 01:46:16
【问题描述】:

此 org.eclipse.ui.workbench 插件中缺少 SaveAllAction.class。我找到了一个doc,但我不明白,它们用作替代品。

【问题讨论】:

标签: eclipse eclipse-plugin eclipse-rcp m2eclipse


【解决方案1】:

SaveAllAction 是一个您不应该使用的 internal 类。它在很久以前的 Eclipse 3 版本之一中已被删除。

当前等效的是org.eclipse.ui.file.saveAll 命令。您可以使用以下命令执行此命令:

IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();

IHandlerServicer handler = window.getService(IHandlerService.class);

handler.executeCommand("org.eclipse.ui.file.saveAll", null);

【讨论】:

  • org.eclipse.ui.file.saveAll 命令在 Eclipse 4.7.2 中找不到。 saveAllAction = new SaveAllAction( PlatformUI.getWorkbench().getActiveWorkbenchWindow() );请告诉我在哪里可以找到它。提前致谢。
  • org.eclipse.ui.file.saveAll 是使用 `org.eclipse.ui.commands' 扩展点声明的 command。请参阅答案中的示例。
  • 当我尝试你的建议时, IHandlerServicer 被贬低了。 public static Action getSaveAllAction() { if (saveAllAction == null) { saveAllAction = new SaveAllAction( PlatformUI.getWorkbench().getActiveWorkbenchWindow() ); } 返回 saveAllAction;这是我的方法,我想在其中使用和保存多个编辑器。
  • org.eclipse.ui.handlers.IHandlerService 未被弃用。它在 Eclipse 中随处可见。检查您导入的内容是否正确。
  • 但我正在使用这个公共静态操作 getSaveAllAction() { if (saveAllAction == null) { saveAllAction = new SaveAllAction( PlatformUI.getWorkbench().getActiveWorkbenchWindow() ); } 返回 saveAllAction; } 这里我们需要 return 作为操作。
猜你喜欢
  • 2016-08-05
  • 2016-01-06
  • 1970-01-01
  • 2023-03-12
  • 2011-05-06
  • 1970-01-01
  • 1970-01-01
  • 2013-01-22
  • 2020-06-04
相关资源
最近更新 更多