1. Eclipse 平台架构
Eclipse平台是围绕着插件(plugin-ins)的概念组织起来的,插件是代码和数据组成的资源束,为Eclipse平台添加功能。可以以代码库、平台扩展、甚至是文档的形式为Eclipse添加功能。插件可以定义扩展点,其他的插件可以通过扩展点添加新的功能。
平台中的每一个子系统都是一组实现了关键功能的自组织的插件,一些插件使用扩展模型向平台添加了可视化的功能,另外一些提供了能够用来实现系统扩展的类库。
Eclipse SDK 包含了基本的平台部分和两个对于插件开发非常有用的重要工具,Java开发工具 (Java development tools, JDT) 实现了一个完整的Java开发环境,插件开发环境 (Plug-in Developer Environment, PDE) 提供了简化插件和扩展点开发的专门工具。
这两个插件不仅提供了有用的功能,而且提供了插件开发的非常好的例子,展示了新的工具是怎么通过创建扩展插件添加到平台中的。
2. Eclipse SDK 概览
2.1 运行时核心 (Runtime Core)
平台运行时核心实现了一个运行时引擎,运行基础平台,动态发现和运行插件。插件就是一个用OSGI清单文件(MANIFEST.MF)和一个插件清单文件(plugin.xml)描述的具有组织结构的组件,Eclipse 平台维护了一个所安装插件以及其所提供功能的注册表。
由于运行时的存在,用户只要不使用所安装的插件就不会占用内存和产生性能损失,插件可以安装和添加到平台的注册表,但是,除非用户使用到插件提供的功能,插件就不会激活。
Eclipse 平台运行时是使用OSGI 服务模型实现的,对于一般应用程序开发者来说,Eclipse运行时的实现细节或许不是很重要,但是熟悉OSGI的开发者会发现Eclipse 插件实际上是一个OSGI 束(bundle)。
熟悉Eclipse 运行时系统最好的方式就是创建一个插件,Plug it in: Hello World meets the workbench 这篇文章讲述了怎样创建一个插件,想要理解运行时系统的详细细节,可以看看Runtime overview 。
2.2 资源管理
资源管理插件定义了一个通用资源模型,来管理工具插件的制品 (artifacts)。插件可以创建和修改项目、文件夹和文件,组织和存储磁盘上的开发制品。 Resources overview 这篇文章提供了资源管理系统的概要描述。
2.3 工作台UI (Workbench UI)
工作台UI 插件实现了工作台UI 并定义了一些扩展点,使得其他的插件可以添加菜单和工具栏动作、拖拽操作、对话框、向导和定制的视图、编辑器。 Plugging into the workbench 介绍了工作台UI扩展点和API。
还有一些UI插件定义了帮户用户界面开发的框架。这些框架用来开发工作台本身。使用这些框架不仅简化了插件用户界面的开发,而且确保不同插件具有一个共同的外观和层次一致的工作台集成。
标准小部件工具集(Standard Widget Toolkit, SWT),是一个低级的、独立于操作系统的工具集,支持平台集成和可移植API。Standard Widget Toolkit 讲述了SWT。
JFace UI 框架提供了一个更高级的应用程序结构,支持对话框、向导、动作(action)、用户首选项和小部件管理等。Dialogs and wizards 和 JFace: UI framework for plug-ins 讲述了JFace 提供的功能。
2.4 团队支持 (Team support)
Team 插件允许其他插件实现团队编程和版本库访问。Eclipse SDK 包含一个CVS 插件,使用team support 在SDK中提供CVS 客户端支持。Team support 描述了 Team support。
2.5 调试支持
通过扩展Debug 插件,我们可以创建新的插件,来实现特定编程语言程序的启动和调试。 Program debug and launching support 描述了调试的实现机制。
2.6 帮助系统
帮助插件实现了一个平台优化的帮助Web服务器和文档集成基础工具,定义了一些能够帮助其他插件实现帮助和插件文档的扩展点,帮助系统提供的文档Web 服务器包含了一些特定的工具,允许插件能够使用逻辑的、基于插件的URL的方式引用文件,而不是通过文件系统URL。还有一些插件在产品的级别上提供了帮助文档的支持。
2.7 Java 开发工具 (JDT)
Java 开发工具(JDT) 扩展了平台工作台(platform workbench),为编辑、查看、编辑、调试和运行Java code代码提供了特定的功能特性。JDT 作为一个套插件包含在 Eclipse SDK中,Java 开发用户指南 描述了怎样使用JDT。JDT插件开发指南 描述了JDT的结构和API。
2.8 插件开发环境 (Plug-in Development Environment, PDE)
PDE 提供了自动化创建、修改、调试和部署插件的工具。PDE也是作为一个套插件包含在Eclipse SDK中的。PDE指南 描述了怎样使用PDE。
附:
参考:http://help.eclipse.org/helios/index.jsp?topic=/org.eclipse.platform.doc.isv/guide/arch.htm
- 大小: 69.1 KB
分享到:
相关推荐
Eclipse 平台架构技术分析 一、Eclipse 概述 Eclipse 是一个开放源码的集成开发环境(IDE),最初由IBM公司发起,现在由Eclipse基金会管理。它以其强大的可扩展性而著名,主要体现在其插件体系结构上。Eclipse 并不...
火龙果软件工程技术中心 摘要由于Eclipse提供了一个开放灵活的框架,Eclipse...它们在架构中互动工作,完美的集成。随着Eclipse3.0加强了对RCP(RichClientProgram)开发的支持,Eclipse已成为广为业界所支持的开放性
总的来说,Eclipse插件开发是一个涉及多方面知识的复杂过程,开发者需要掌握Eclipse平台架构、插件开发工具PDE的使用、工作台的扩展、服务层的交互、命令框架的设计、帮助系统的集成、国际化和本地化处理、测试和...
Eclipse IOT软件架构白皮书,含开源软件架构,平台,gateway,云平台等(Eclipse IoT White Paper - The Three Software Stacks Required for IoT Architectures.pdf)
总的来说,Eclipse插件开发是一项需要深入理解Eclipse平台架构、熟悉SWT和JFace、掌握扩展点和插件通信机制的技术。通过学习和实践,开发者能够充分利用Eclipse的开放性,定制自己的开发环境,提高工作效率。对于...
首先,Eclipse插件开发的基础是Eclipse平台架构。Eclipse平台基于插件架构,可以认为是一个插件容器。它由一些核心的插件组成,如工作台(Workbench)、团队支持、帮助系统等。Eclipse的核心是一个运行时环境,它...
Eclipse插件开发涉及到对Eclipse平台架构的深入理解,其中包括平台的扩展点、插件生命周期、以及各种服务和API的使用。Eclipse的扩展机制允许开发者通过定义扩展点来增强平台的功能。一个扩展点可以看作是Eclipse...
#### 一、Eclipse平台架构分析 在探讨如何设计并实现一个针对Linux设备驱动的集成开发环境(IDE)之前,首要任务是深入理解Eclipse平台的架构。Eclipse是一个开源的、可扩展的、多语言的IDE,它的核心框架由工作台...
Eclipse平台架构从开发视角、平台视角和技术组成视角进行了剖析。开发视角强调了基于JVMEquinox(OSGI+Extension Point)的运行时环境;平台视角展示了Platform Runtime、Workspace、Help、Team等核心组件;技术组成...
#### 二、Eclipse平台架构 - **概观**:Eclipse平台是构建在OSGi框架之上的一系列组件和服务集合。 - **架构**: - Eclipse平台的核心由多个插件组成,这些插件协同工作,提供基本的功能和服务。 - 主要包括工作...
Eclipse平台是用Java语言编写的,因此,为了运行Eclipse,你需要在你的计算机上安装Java运行环境(JRE)。 在Eclipse3.1这个特定的版本中,系统需求明确指出需要1.4.2版本或更高版本的JRE。这是由于Eclipse与特定...
#### Eclipse平台架构详解 Eclipse平台主要由工作区(workspace)、工作台(workbench)以及一系列的视图(view)、编辑器(editor)和视景(perspective)构成。工作区是用于存储用户项目的物理位置,而工作台则是...