Eclipse是一个开源软件项目,它的目标是提供最好的工具集成平台。Eclipse软件具有Common Public License,就是说你可以使用、修改其中的代码,可以重新发布为free版本,也可以作为私有项目的一部分。
Eclipse项目分为三个子项目:Eclipse项目,Tools项目和Technology 项目。
Eclipse项目:主要包括Eclipse开发的核心组件,即Eclipse
SDK,它用于支持平台或者框架的开发。Eclipse本身是用Java开发的,但是它可以用于实现其它语言的开发工具。Eclipse项目又分为三个子
项目:Platform,JDT(Java Development Tools),PDE(Plugin Development
Tools).基于这三个子项目足以任意扩展Eclpse框架或者开发其它工具。
- Platform:Eclpse的核心组件。它提供了插件开发和工具集成所需要的框架和服务,比如标准的工作台用户界面,项目、文件和文件夹的管理机制等。
- JDT是Java的集成开发环境,甚至可以用于开发Eclipse本身。
- PDE为Eclipse插件提供view和editor。PDE建立在JDT的基础上并且进行了扩展,它支持一些非Java的插件开发活动,比如定义扩展点。
Tools项目:Eclipse平台开发出来的各种为其它应用提供支持的工具。如CDT是一个实现C++集成开发环境的子项目,GEF是一个提供图形编辑功能的子项目,而EMF是一个由形式化模型定义转化为模型代码的子项目。
Technology项目:为关心Eclipse的研究员或者学术界人士提供机会。如XML Schema Infoset Model项目就是一个基于EMF的用于读取、操作XML Schema的库。
下面介绍一下Eclipse项目的Platform子项目的几个重要特征:
(1)Plug-in体系结构:
在Eclipse中,提供某个功能的基本单元或者构件成为插件(Plugin)。Eclipse平台以及在其上面扩展的其它一些工具都是由一系列插件组
成。插件包括运行所需要的Java代码、图片文件、文本文件、名为Plugin.xml的Manifest文件等。plugin.xml声明了该插件与其
它插件的关系:其中,Requires声明它的运行所依赖的其它插件;Exports声明它的公有类对其它插件的可见性;Extension
Point声明了其它插件使用它的方式;Extensions声明它所使用的其它插件的扩展点。
Eclipse启动时先找到所有可用的插件,但是不全部启动。当真正需要某个插件的时候才为该插件分配自己的Class loader并运行插件,这种性质成为“Lazy Start”。
(2)工作台资源:
Eclipse中资源(resource)是指具有如下特性的任何文件或者文件夹:可以在上面注册Change Listener
以监听资源的变化;可以在上面添加错误信息或者TODO列表等Marker;可以跟踪其历史变化。Project是一类特殊的文件夹类型的资源,即文件系
统中用户指定的一个文件夹。
(3)UI框架:
Eclipse的UI框架包括SWT和JFace,以及定义了整个EclipseIDE的整体结构的工作台界面。
- SWT (Standard Widget
Toolkit)是一个独立于操作系统的图形库,它尽可能多的调用操作系统的native widget。而Java的AWT只有List,Text
Field和Button(各种操作系统下这些组件的外观类似)等底层组件是调用操作系统的,其它组件都是Swing自己模拟。所以AWT和Swing在
不同的操作系统下开发出来的界面外观类似,导致与本地操作系统更个不协调。而SWT只有在操作系统没有native实现的情况下才自己模拟,因此开发的界
面与本地操作系统风格一致。
- JFace是用SWT实现的更高层次的工具集,负责图像字体的管理、对话框、向
导、进度条等任务。JFace并没有像用户隐藏SWT的API,因此用户可以同时使用JFace和SWT。JFace的一个重要内容是提供标准的试图类,
如 list,tree,table等组件的viewer,它们与SWT中的List,Tree,Table组件对应,只是从更高层次上显示数据。
Action Framework用来为菜单和工具条添加命令,是JFace的另一主要内容。
- 工作台是用户使用Eclipse的主窗口,由SWT和JFace实现。一个主窗口由一系列的view和editor组成。工作台上view和editor的位置可以自由排列,每种排列方式叫做一个Perspective。
分享到:
相关推荐
### Eclipse Modeling Framework (EMF) Developer Guide 知识点概览 #### 1. EMF 框架程序员指南 **EMF Framework Programmer's Guide** 部分为开发人员提供了深入理解 EMF 核心框架所需的知识。这部分涵盖了如何...
### EMF Eclipse Modeling Framework 第二版 #### 一、概述 《EMF Eclipse Modeling Framework》第二版是由 Dave Steinberg、Frank Budinsky、Marcelo Paternostro 和 Ed Merks 四位专家编写的权威指南。本书是...
Addison.Wesley.Eclipse.Modeling.Framework.A.Developers.Guide 中文版
总的来说,EMF Developer Guide是学习和应用EMF的关键参考资料,它为开发者提供了一个强大而灵活的工具,使模型驱动开发变得更加简单和高效。通过EMF,你可以利用模型的力量,提升软件开发的质量和效率。
Eclipse Modeling Framework: A Developer's Guide By Frank Budinsky, David Steinberg, Ed Merks, Raymond Ellersick, Timothy J. Grose Publisher : Addison Wesley Pub Date : August 11, 2003 ISBN : 0-...
#### 一、Eclipse EMF简介 ##### 1.1 什么是Eclipse Modeling Framework (EMF) Eclipse Modeling Framework(EMF)是Eclipse平台的一部分,它提供了一套完整的工具和服务来支持建模工作。EMF的主要目标是为用户...
Eclipse的EMF(Eclipse Modeling Framework)插件是一个强大的模型驱动开发工具,它基于Java构建,用于创建、编辑和管理复杂的数据模型。这个插件是Eclipse IDE的一个重要组成部分,特别适合那些需要进行领域特定...
#### 一、EMF框架概述 EMF(Eclipse Modeling Framework)是Eclipse项目中的一个子项目,它提供了一套用于构建模型驱动的开发工具和应用程序的框架。EMF的主要目标是简化元数据驱动应用的开发过程,通过将模型与...
基于Eclipse的模型框架 它是Eclipse MDA(Model Driven Architecture)的一个重要组成部分 是Eclipse中许多项目的基础 e g GEF EMF可以将模型转换成高效的 正确的 和易于定制的Java代码
【标题】"EMF Eclipse" 是一个与Eclipse集成的元建模框架,它允许开发者创建、编辑和操作复杂的模型。EMF(Eclipse Modeling Framework)是基于OMG的MOF(Meta-Object Facility)标准,为开发人员提供了一种在...
Eclipse Modeling Framework(EMF)是Eclipse项目中的一个核心组件,它提供了一种模型到代码的转换机制,使得开发者可以构建基于模型的软件系统。EMF是基于OMG的Meta-Object Facility(MOF)标准,允许开发人员创建...
"eclipse插件emf2.8.0"是针对Eclipse的一个重要插件,全称为 Eclipse Modeling Framework (EMF) 的2.8.0版本。 EMF是Eclipse项目下的一个重要组成部分,它是一个基于模型的软件开发框架,主要用于构建能够处理结构...
requires 'org.eclipse.emf.transaction 1.4.0' but it could not be found 解决办法:将下载解压后的这三个文件拷贝到eclipse的plugin文件夹下即可解决上述问题 org.eclipse.emf.transaction_1.4.0.v201003 31-1738...
本文将深入探讨Eclipse插件开发的相关知识点,结合提供的"全书分为4篇共24章"的学习笔记和源码,帮助你更全面地理解和实践Eclipse插件开发。 第一篇:基础篇 在这一篇中,你将学习到Eclipse插件开发的基础知识,...
第2章 SWT/JFace概述 第3章 SWT编程基础 第4章 使用基本控件与对话框 第5章 容器与布局管理器 第6章 界面开发工具 第7章 高级控件使用 第8章 SWT/Jface的事件处理 第二篇 核心技术 第9章 Eclipse插件体系结构 第10...
Eclipse Modeling Framework(EMF)是Eclipse项目下的一个重要的组成部分,它提供了一种基于Java的模型构建框架。EMF的主要特点在于它能够极大程度上简化基于结构化模型的Eclipse插件或应用程序的开发工作。通过EMF...
### Eclipse中EMF, GEF, VE的安装详解 #### 一、Eclipse环境搭建 在开始介绍如何在Eclipse中安装EMF (Eclipse Modeling Framework)、GEF (Graphical Editing Framework) 和 VE (Visual Editor) 这三个重要的插件...