Eclipse插件开发文档记录 下载本文

内容发布更新时间 : 2024/12/27 0:07:11星期一 下面是文章的全部内容请认真阅读。

Eclipse插件开发文档记录

一、 参考网站

http://www.360doc.com/content/12/0322/18/9210133_196714278.shtml

二、 Eclipse插件开发之基础篇(1)

名词翻译

有一些名词在翻译的过程中可能会出现歧义,在这里统一一下。 アーキテクチャ=architecture=架构 プラットフォーム=platform=平台 コンポーネント=component=组件 其余的随时补充。 1.Eclipse的架构

Eclipse被作为java的IDE(集成开发环境)被广泛的应用,但是从本质上看Eclipse是一个整合了各种开发工具的平台。因此,它采用了可以自由的增加各种功能的插件架构技术。Eclipse平台的基本架构如图1-1所示。 ?

图1-1 Eclipse的架构

在这里,在最底层位置的是作为Eclipse插件架构基干的OSGi运行时。虽然在早期的Eclipse版本中已经开始使用插件架构了,但是在Eclipse3.0的时候才首次引入了OSGi。OSGi是open services gateway initiative的简称、原本是一种为嵌入式硬件开发的,使网络上的服务提供者和使用者交互(結びつける)的注册服务。Eclipse使用OSGi来进行插件的管理。

OSGi运行时之上所有被配置的组件群都是以插件的方式提供的。SWT和JFace提供了用户接口(User Interface)的API。由于SWT和JFace并不依赖于Eclipse,也有可能被作为类库单独使用。Eclipse不仅把基本的用户接口作为工作台API(WorkBench API)提供出来,在后面要讲到的工作区(Workspace)内的资源通过资源API(Resource API)的形式也被作为基本API提供出来了。在这之上构建起了帮助系统以及基于更新管理器的自动更新等功能。

从Eclipse平台的角度看,SWT、JFace、工作台的部分就是EclipseRCP(Rich Client Platform)。EclipseRCP是基于Eclipse的富客户端技术,Eclipse不仅是一个开发工具,也可以作为一个通用的应用程序平台。EclipseRCP是Eclipse平台的子集,同时,Eclipse自身也是一个EclipseRCP的运用实例。 2.扩展点

插件为了自身能够对其他插件进行扩展而提出了扩展点的概念。当要为插件增加功能的时候就可以利用这个扩展点。在扩展点的基础上,插件之间可以互相连接。

图1-2 使用扩展点进行扩展

扩展和扩展点的连接在程序执行时被建立,提供扩展点的插件事先并不知道该扩展点实际被扩展了什么样的行为。使用扩展点的插件需要在清单文件(plugin.xml)中像代码1-1那样,使用extension元素声明扩展。

extension元素中的schema由提供扩展点的插件决定,元素中的内容必须按照schema进行书写。 代码1-1 plugin.xml中声明扩展

?

...... 2

3

像上面这样的扩展点和扩展不断的积累重叠,使得Eclipse平台能够实现各种各样的功能。Eclipse平台提供的扩展点有 增加菜单项 ? 增加视图 ? 增加编辑器

?

等等,数量非常的多。本文将以使用频率相对较高的扩展点为中心进行介绍,在Eclipse的帮助中有Eclipse提供的所有扩展点的说明,大家在使用时可以参考。

当然,定义一个新的自制插件是绝对可能的。扩展点的定义方法会在[扩展点定义]章节中为大家详细介绍。 3.工作台(Workbench)