- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
第21章基于RCP的产品开发经过前面的学习,读者对于开发Eclipse的插件产品应该是非常熟悉了。在实际的应用中,大家肯定不满足于仅仅开发插件产品。当面对客户的时候,必须提供一个独立、完整的应用程序给客户。不可能把整个EclipseIDE,连同编写的插件一起交付给客户。可以想象,这样的软件产品是很别扭的,普通客户并不需要JDT,也不可能学习使用Eclipse。提供产品给客户的时候,必须把Eclipse平台中那些不必要的功能去掉(例如JDT),还要给整个应用程序包装——有专门的欢迎界面,看到About的时候,显示的是自己特有的软件品牌而不是Eclipse.Org的介绍,甚至把整个Eclipse的界面都进行改造,让界面更容易使用。21.1Eclipse平台的核心架构在开发自己的RCP程序之前,先来了解一下Eclipse的核心架构。0102进一步细看PlatformRuntime,整个PlatformRuntime是Eclipse中的一个子项目Equinox。Equinox项目是Eclipse开源组织提供的OSGi框架的实现。Eclipse自3.0版本开始,其内核移植到OSGi框架上。通过OSGi框架强大的组件控制、交互和管理能力,再加上Eclipse插件的自有特点,Eclipse开源框架得到了跳跃式的发展。Eclipse3.4后,正式用Equinox作为核心框架。OSGi的本质是将Java面向对象的开发转向面向组件和服务的开发。OSGi框架提供了一套完善的机制用于管理和控制组件(Bundle)、服务(Service)的生命周期,以及组件和服务在其生命周期内的交互。Equinox的任务除了包括OSGi的工作外,还要负责兼容Eclipse3.0之前的插件,负责启动整个Eclipse平台。21.1.1Eclipse的核心框架——Equinox21.1.2Eclipse中插件、程序、和产品的概念01040203在进行RCP产品开发之前,再来明确一下Eclipse中的几个概念——插件、程序、产品。插件大家已经非常熟悉了,本书前面的内容都是关于插件开发的。在Eclipse中,所有组件都是插件,程序(Application),产品(Products)都是一种特殊的插件。程序(Application)产品(Product)Eclipse平台、插件、程序、产品之间的关系:21.2建立RCP产品项目在前面章节的例子中,由于没有自己的Application,所有插件的运行都依赖这个插件,通过启动EclipseIDE来启动整个Eclipse平台。下面开始制作自己的RCP软件平台,制作两个新的Application和Product,并包装成一个独立的应用软件。21.2.1新建RCP项目RCP项目也是插件项目,在Eclipse中,选择新建项目,按照图的步骤建立RCP项目。注意在第三步的时候,要选择RichClientApplication-Yes。21.2.2RCP插件项目的文件结构在模板选择完成后,按Finish,向导自动建立了一些相关的文件。现在项目的文件结构如图。21.2.3认识扩展点模板向导还自动建立了一些扩展点的扩展。如图,在PDE编辑器中,选择Extensions标签,可以看到这些自动建立的扩展。其中第一个最重要的是扩展。没有这个扩展,就不能成为Application插件,只能算是一般的插件而已。21.2.4认识IApplication模板向导已经建立了IApplication的实现,就是类。Application类实现IApplication所定义的两个抽象方法start和stop。2.5RCP关键对象的启动过程到这里,可以看到一个RCP插件程序的启动需要多个对象,看上去比较复杂,其实每个对象都只是负责单一的工作,这也符合面向对象开发的原则。21.2.6扩展点RCP模板的向导还实现了扩展。用于定义Product。如图,在PDE编辑器的extensions标签中,展开扩展点可以看到扩展的详细设置。”21.2.7试运行RCP项目到此,已经比较深入地研究过一个RCP产品项目的结构了。下面来试运行一下这个RCP产品,看看是怎样的一个样子。首先选择工具栏上的Run按钮,下拉菜单中选择RunConfigurations,打开运行设置对话框。在EclipseApplication类别中新建一个运行项目。21.2.7试运行RCP项目21.3定制RCP程序的菜单通过前面的步骤,建立了一个应用程序。现在这个RCP程序还十分简陋,菜单仅有Help,没有工具栏,也没有状态栏,也无法选择其他视图或者其他透视图。下面将重
您可能关注的文档
- 国家林业局软件作操培训.ppt
- 国际疾病分类(ICD-10)在妇幼卫生统计中的应用.ppt
- 实验动物的饲养与管理.ppt
- 四年级下家长会(语文).ppt
- 孕期营养与胎儿健康.ppt
- 小学二年级数学二年级集体备.ppt
- 学习情境花卉病虫害的综合治理.ppt
- 地产策划公司内部激励准则.ppt
- 学习单元二汽车维修业务接待《汽车维修接待实务》.ppt
- 加速度类比教学法第二课时速度时间图像.ppt
- 西安市铁一中学2025届九年级下学期中考一模数学试卷(含解析).docx
- 2025年湖南省邵阳市武冈市九年级模拟考试三模数学试题(含答案).docx
- 浙江省“山海联盟”2025届初中学业水平考试模拟卷(三)数学试卷(含解析).docx
- 山东省聊城市阳谷县三校联考2025届九年级下学期开学考试数学试卷答案.docx
- 河南省许昌市襄城县名校联盟2025届九年级下学期中考一模数学试卷(含解析).docx
- 四川省广元市苍溪县2025届九年级下学期中考一诊数学试卷(含解析).docx
- 2025年吉林省辽源市东辽县九年级中考数学第三次模拟试题(含答案).docx
- 山东省东营市利津县北部六校(五四学制)2024-2025学年八年级下学期3月月考数学试卷.docx
- 山东省东营市利津县北部六校(五四学制)2024-2025学年八年级下学期3月月考数学答案.docx
- 山东省东营市利津县北部六校(五四学制)2024-2025学年七年级下学期3月月考数学试卷.docx
文档评论(0)