我的Eclipse插件在我的插件创建的项目中为Project Explorer中的用户生成.pdf文件。今天,测试人员注意到,在他的安装中,当他双击项目浏览器中的.pdf文件时,他获得了OLE异常对话框......
我想要做的是,当我的插件安装在Eclipse中时,它会修改首选项以将.pdf文件关联分配给系统的pdf查看器。
我意识到这可能是一个坏主意,因为我不能假设用户在他/她的PC上安装了PDF查看器。
我注意到当我右键单击项目浏览器中的.pdf文件时,我可以选择“打开方式”各种选项,如“默认编辑器”和“系统编辑器”。我希望我的插件能够将默认操作设置为Open With - >系统编辑器。
这可能吗?如果是这样,怎么样?
答案 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
类运行程序。您也许可以使用其中之一。