2. Eclipse 体系结构 Eclipse 作为一种通用的工具平台,它将各个功能模块连接起来,提供标准的接口,接收各个模块的请求并且控制程序的运行。整个Eclipse 平台建立在插件机制之上,插件是Eclipse 平台下最小的可单独开发和发布的功能单元。除了一些小的称为平台运行时的内核,Eclipse 平台所有的功能都由插件实现。此外,Eclipse 不仅支持团队协同开发,还提供了详细的帮助文档以及对许多外部工具的支持。本章主要介绍Eclipse 的运行机制和体系结构。 2.1 工作机制 Eclipse 平台的主要任务是为开发者提供各种编程工具集成的机制和规则,这些机制通过应用程序接口(API )、类和方法表现出来。本质上,Eclipse 是一组松散绑定,但互相连接的代码块。 搞清楚这些代码块之间的相互调用和连接方法,也就理解了Eclipse 结构的基本原理。Eclipse 平台的结构如图 2-1 所示。 Eclipse 平台的设计和构建是为了满足以下的需求。 (1)支持各种应用开发工具的构建。 (2 )支持无限的工具提供者,包括独立软件供应商(ISV)。 (3 )支持可操做任意内容类型的工具 (例如,HTML、Java 、C、JSP、EJB、XML 和GIF )。 (4 )方便相同或不同内容类型之间以及不同供应商之间的无缝集成。 (5 )支持图形界面和非图形界面的应用开发环境。 (6 )能在各种操作系统下运行,包括 Windows 和Linux 。 正是由于以上需求,Eclipse 平台 用了插件机制。插件的特点如下。 (1)插件是Eclipse 平台下最小的可单独开发和发布的功能单元。 (2 )插件一般都是用Java 编写一个JAR 文件,里面包括了Java 代码、一些只读文件和 其他资源,如 Web 模板、消息目录和本地代码库等。有的插件甚至没有代码。例如,提供HTML 页面格式的在线帮助的插件。 (3 )每个插件都有一个声明自身与其他插件的关联关系的清单文件。关联模型很简单:一个插件声明任意 个命名的扩展点,同时声明任意 个对其他插件的扩展点。 (4 )插件的扩展点可以被其他插件扩展。例如,工作台插件给用户声明了一个扩展点首选项,任意插件通过定义该扩展点的扩展来添加自己的用户首选项。一个扩展点可能有一 个对应的应用程序接口。其他插件通过扩展该扩展点实现这个接口。所有的插件都可以定义新扩展点并为其他插件提供新的应用程序接口。 Eclipse 启动时发现可用的插件,读取它们的清单文件并构建一个内存中的插件注册表, 平台通过名字将扩...