以编程方式保存 Eclipse 编辑器

发布于 2024-11-05 09:15:55 字数 92 浏览 1 评论 0原文

我正在开发一个插件。

单击按钮时,我想调用 Eclipse 的保存方法或调用 Eclipse 工具栏上的保存按钮。

有什么方法可以做到呢?

I am developing a plug-in.

On clicking a button, I'd like to call the save method of Eclipse or call the save button on Eclipse toolbar.

What is the way to do it?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

羁〃客ぐ 2024-11-12 09:15:55
org.eclipse.ui.PlatformUI.getWorkbench().saveAll(..) 

应该可以解决问题。

如果您想保存活动编辑器,请尝试

IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
IEditorPart editor = page.getActiveEditor();
page.saveEditor(editor, true /* confirm */);

注意,导航路径中的元素可能为空。

org.eclipse.ui.PlatformUI.getWorkbench().saveAll(..) 

should do the trick.

If you want to save the active editor, please try

IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
IEditorPart editor = page.getActiveEditor();
page.saveEditor(editor, true /* confirm */);

Note that the elements in the navigation path may be null.

留一抹残留的笑 2024-11-12 09:15:55

我用它来保存一个或多个项目的脏编辑器:

//Save all changes
    Display.getDefault().syncExec(new Runnable() { // save all editors needs to be called by the ui thread!
        @Override
        public void run() {
            IDE.saveAllEditors(new IResource[]{prj}, true);
        }
    });

其中 prj 是一个 IProject 对象。

希望这有帮助

再见

I use this to save dirty editors for one or more projects:

//Save all changes
    Display.getDefault().syncExec(new Runnable() { // save all editors needs to be called by the ui thread!
        @Override
        public void run() {
            IDE.saveAllEditors(new IResource[]{prj}, true);
        }
    });

where prj is an IProject object.

hope this helps

bye

孤寂小茶 2024-11-12 09:15:55

我用过——

IDEWorkbenchPlugin.getDefault().getWorkbench().saveAllEditors(true);    

I used -

IDEWorkbenchPlugin.getDefault().getWorkbench().saveAllEditors(true);    
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文