Eclipse平台架构技实孽分析及基于RCP的应用研究.docVIP

Eclipse平台架构技实孽分析及基于RCP的应用研究.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Eclipse平台架构技实孽分析及基于RCP的应用研究

Eclipse平台架构技术分析及基于RCP的应用研究 摘 要 由于Eclipse提供了一个开放灵活的框架,Eclipse技术现在广为流行,基于Eclipse构架的应用越来越多。本文先对Eclipse的结构进行了剖析,分析了Eclipse使用的技术及实现原理。最后给出了一个基于Eclipse RCP应用的项目实例。 关键词 Eclipse;插件;嵌入式;RCP●0引言 Eclipse是一个具有先进软件设计和实现技术的开发框架。应用软件在Eclipse中被称为“插件”。它们在架构中互动工作,完美的集成。随着Eclipse3.0加强了对RCP(Rich Client Program)开发的支持,Eclipse已成为广为业界所支持的开放性标准软件开发环境,业界已成事实的工业标准。 Eclipse的特点:跨平台;提供了GUI和非GUI;语言中立;基于插件的开放的、可扩展的平台。●1. Eclipse技术剖析1.1 Eclipse体系结构概述 Eclipse的结构体系如下图所示: 图1 Eclipse体系结构图 Eclipse类似于“软总线”的体系结构,Eclipse的核心部分(Platform Runtime)类似于一条“即插即用”的“总线”,它提供了许多的“插槽”(扩展点:extension point)。其余的部分都可看成类似于外部设备的“插件”(Plug-in),可随时加载和卸载。更为灵活的是每个插件又提供了“插槽”可继续安装其他的插件。Eclipse分为Eclipse平台、JDT、PDE、其他的插件几个部分。其中Eclipse平台是整个系统的基础,Eclipse的核心。JDT是提供了用于编辑、查看、编译、调试和运行Java代码的专门插件。PDE构建于Eclipse平台和JDT之上,提供了专门开发插件的工具。 Eclipse平台是在其上创建插件扩展的核心框架和服务的名称,是一个通用的基础架构。平台由平台运行时、工作空间、工作台、帮助、小组、调试构成。平台在结构上大致可分为核心(core)和用户界面(UI)两层。核心是与用户界面无关的基础结构,包含平台运行时和插件管理、工作空间和资源管理以及版本和配置管理。其中平台运行时又是Eclipse平台的核心。1.2 平台运行时(Platform Runtime):运行时相当于一个微内核,是插件的核心引擎。它位于平台核心中最低级别的部分,由org.eclipse.osgi和org.eclipse.core. runtime两个插件组成,其他所有的插件都依赖于这两个插件。 1)运行时的功能:a)定义插件的结构以及它们包含的实现详细信息(bundle 和类载入器)。 b)查找和执行主要的Eclipse应用程序以及维护插件的注册表、扩展和扩展点。 c)提供实用程序(例如,记录、调试跟踪选项、适配器、首选项库和并发性基础结构)。 2)运行时工作原理: 运行时管理着一个插件注册表(所有插件的标识),当Eclipse启动时,运行时内核先是定位JRE的位置,然后启动startup.jar扫描plugins和features目录下的插件配置文件,对插件进行初始化注册到OSGi中,并保存配置文件中的信息。然后查找清单文件中声明的extension point和extension,将二者匹配,保存插件的依赖关系。最后启动应用。 运行时对插件实行“lazy load“,只有当需要使用插件时才将其调入内存。不需要时选择适当的时机清除出内存。1.3 OSGi-1.4Eclipse平台技术的核心参照1.3.1OSGi概述: Eclipse体系架构是参照OSGi实现的。核心插件org.eclipse.osgi就是OSGi的实现。 OSGi(Open Service Gateway Initiative)是一个为家用硬件设备的远程互访建立的一个开放的规范。它包括构建开放的可交付网络服务的各方面。 OSGi中的应用称为bundle,每个bundle可提供一定数量的服务(Services)。每一个安装在OSGi服务平台的bundle都有一个与之关联的bundle对象(object),它负责管理bundle的生命周期。bundle有诸如安装、停止、活动等多种状态。1.3.2OSGi主要的规范 n框架规范(Framework): OSGi规范的核心,提供了一个通用的、安全可管理的Java 框架。提供了以下功能: 管理bundle的安装和更新。bundle安装后会注册一定数量的服务,可被同一Framework下的其他bundle使用。不同bundle提供的Services可构成一个大规模的Services,不同的bundle和Services形成依赖。这种依赖关系由Framework负责管理。Framework为bundle提供了代

文档评论(0)

ayangjiayu3 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档