在Eclipse中,默认情况下如何使用系统编辑器打开.pdf文件?

时间:2014-03-21 21:02:45

标签: eclipse eclipse-plugin eclipse-rcp

我的Eclipse插件在我的插件创建的项目中为Project Explorer中的用户生成.pdf文件。今天,测试人员注意到,在他的安装中,当他双击项目浏览器中的.pdf文件时,他获得了OLE异常对话框......

OLE Exception dialog from Eclipse

我想要做的是,当我的插件安装在Eclipse中时,它会修改首选项以将.pdf文件关联分配给系统的pdf查看器。

我意识到这可能是一个坏主意,因为我不能假设用户在他/她的PC上安装了PDF查看器。

我注意到当我右键单击项目浏览器中的.pdf文件时,我可以选择“打开方式”各种选项,如“默认编辑器”和“系统编辑器”。我希望我的插件能够将默认操作设置为Open With - >系统编辑器。

这可能吗?如果是这样,怎么样?

2 个答案:

答案 0 :(得分:2)

尝试窗口>偏好>一般>编辑>文件关联。

如果不存在,请添加* .pdf。突出显示它,然后添加关联的编辑器。选择外部程序单选,然后选择Adobe Acrobat文档或其他阅读程序。

答案 1 :(得分:2)

看起来不使用内部类就可以更改或添加文件关联。

您可以通过以下方式获取现有文件关联:

IEditorRegistry editorRegistry = PlatformUI.getWorkbench().getEditorRegistry();

IFileEditorMapping [] mappings = editorRegistry.getFileEditorMappings();

但更新列表需要使用EditorRegistry的{​​{1}}实现,这是一个内部类。 IEditorRegistry的实施也是内部的。

更新

IFileEditorMapping扩展点有一个org.eclipse.ui.editors属性用于运行外部程序,command属性用于通过launcher类运行程序。您也许可以使用其中之一。