转自:http://blog.csdn.net/pathuang68/article/details/4323286
1.简介
Rich client platform富客户端平台:应用于JAVA桌面程序开发;
一个Eclipse插件:
Eclipse插件:普通插件(对宿主的扩展);
脱离Eclipse框架独立运行;
与J2EE(jsp,Servlet,ejb)完整结合;
目前,国内RCP应用也逐渐发展和壮大起来,RCP有希望扭转Java桌面应用的颓势。如Jlibrary是一款开源的CMS系统,就是Eclipse RCP的典型应用,还有Nomad PIM(个人信息管理软件),ETC…。
2.RCP体系结构
RCP就是一个简化了的eclipse平台,它只包含5个插件:
runtime是核心类,
osgi是定义的一个标准,用来规范不同的插件,让他们可以相互协作。
剩下的三个插件Workbench、SWT、JFace是用来显示给用户界面的。
填充RCP框架的"血肉"(内容:) ):
- 1.Workbench
每个RCP应用程序,对应一个Workbench(工作台),应用程序的主窗体.
- 2.Perspective
模块化单元,一个Workbench可包含多个Perspective(透视图),各个透视图之间是相互独立的单元.
主要功能:布局视图
- 3.View
视图:主要负责信息的显示.一个透视图可包含一或多个视图.
特点:可灵活布局于特定透视图,作为一个独立的显示模块,可重用
- 4.Editor
编辑器:信息编辑区域.一个透视图对应一个编辑器.
特点:可以与视图进行及时交互;方便用户编辑数据.
几个不得不知道的文件:
-src文件夹下为运行插件时的一些类文件。
-MANIFEST.MF为插件清单文件,是插件与外界沟通的桥梁。
MANIFEST.MF文件是保存OSGi的Bundle文件。该文件也就是与其他平台的接口,通过该接口,外部平台可以使用该Eclipse的插件程序。关键的key值所表示的意义:
Bundle-Name:插件的名称。
Bundle-SymbolicName:为插件的唯一标识。
Bundle-Activator:为主程序启动的类的全名。
Require-Bundle:系统编译和运行的依赖项,可以加入其他所必需的插件。
-build.properties文件为构建RCP程序时所导入的类库设置。
build.properties是保存构建、打包和导出插件所需的所有信息的文件。
-plugin.xml是最重要的文件,该文件是插件的配置文件,集中管理插件内部的运行,在该文件中可以查找所有与该插件有关的信息。
plugin.xml文件是插件开发中最重要的文件,包含声明插件的扩展和扩展点配置。
id="application",表示该扩展点的标识。
point="org.eclipse.core.runtime.applications",表示扩展点的类型。这里表示该扩展点是系统扩展点,例如另一个扩展点类型"org.eclipse.ui.perspectives"为透视图扩展点。
<run>子项中定义了系统启动的class类,为com.fengmanfei.myrcp.Application,可以在源文件下找到这个.java源文件。
对于不同的扩展点有不同的配置元素,读者可以参考Eclipse的帮助文档。
3.RCP运行基本原理
A插件类MyRCPPlugin
系统运行后首先在MANIFEST.MF文件中找到Bundle-Activator所对应的插件类.该类主要创建整个插件的对象,是插件的全局对象。可以通过该类的静态方法获得插件对象的引用,然后获得插件的各种信息,包括插件所对应的Bundle文件信息、log日志对象和工作台对象等。
B应用程序类Application
创建了插件类后,如何来创建主窗口呢?Eclipse运行的程序都是通过扩展点来配置的,初始化的界面程序也不例外,也是在配置的插件文件中配置好的。创建了插件类后,程序会自动查找plugin.xml文件,是否有对应的应用程序扩展点org.eclipse.core. runtime. applications。如果有,再找到该运行程序所对应的class,然后创建对象。
C工作台窗口类
该类创建时首先对工作台进行设置。是在preWindowOpen方法中实现的。该方法会在窗口打开之前调用。另外,也可以通过覆盖父类中的方法来进行窗口打开之前的配置工作和窗口关闭的善后处理工作。
D操作类
创建窗口时,会创建菜单栏和工具栏,此时创建的是ApplicationActionBarAdvisor对象。在该类中,可以添加各种操作项来创建菜单栏、工具栏和状态栏等。
E透视图类
最后,在创建工作台对象时,要指定一个默认的透视图对象。要实现一个透视图类,就要实现IPerspectiveFactory接口。
4.RCP优势
A.开发效率相对较快;
B.界面简洁不失美观;
C.运行速度快;
D.跨平台;
E.与J2EE完整结合;
F.基于Internet布署,维护更加方便;
分享到:
相关推荐
本文将深入探讨RCP(Rich Client Platform)的研究总结,RCP是Eclipse框架的核心组成部分,用于构建强大的Java桌面应用程序。 首先,Eclipse作为一个开源的Java集成开发环境(IDE),由IBM贡献给社区,并逐渐成长为...
**RCP基础教程** 在IT领域,RCP(Rich Client Platform)是Eclipse框架提供的一种用于构建桌面应用程序的开发平台。本教程将带你从入门到基础,深入理解RCP的概念和应用,帮助新手快速上手。 一、RCP概述 RCP是...
首先,理解RCP升级的基础架构是至关重要的。RCP应用的更新通常基于p2(Provisioning Platform 2),这是Eclipse中用于软件管理、部署和更新的组件。p2提供了一种元数据驱动的方法来处理软件的生命周期,包括安装、...
1. **Eclipse RCP基础**:了解RCP的概念、架构以及如何设置开发环境。 2. **用户界面设计**:掌握创建菜单、工具栏、对话框以及视图和透视图的方法,以构建丰富的用户交互体验。 3. **2D绘图**:学习如何利用Eclipse...
**RCP基础** 1. **组件化架构**:RCP基于组件化设计,每个功能模块都是一个独立的插件,这使得开发和维护变得更加灵活和高效。插件可以通过API互相通信,实现功能的组合与扩展。 2. **模型-视图-控制器(MVC)**:...
【用RCP构建GEF程序】的PPT教程主要涵盖了Eclipse Rich Client Platform (RCP)和...总结来说,通过Eclipse RCP和GEF,开发者能够快速构建出强大且用户友好的图形化应用程序,适用于各种复杂的业务需求和桌面应用场景。
总结起来,将JFreeChart报表集成到RCP应用涉及引入依赖、创建视图、绘制和展示图表,以及可能的交互功能实现。这不仅可以提升RCP应用的数据可视化能力,还能为用户提供更直观的数据解读体验。通过实践和不断探索,你...
一、Eclipse RCP基础 1. **组件模型**:Eclipse RCP的核心是组件化,它基于插件(plugin)和模块(bundle)的概念,使得应用程序可以按需加载和卸载功能。 2. **工作台(Workbench)**:工作台是RCP应用程序的中心...
本指南旨在帮助开发者从零开始掌握Eclipse RCP插件开发的基础知识及实战技巧。 ##### Introduction Eclipse RCP 是一个灵活的平台,它提供了构建桌面应用程序所需的所有组件和服务。通过使用Eclipse RCP,开发者...
Rich Client Platform(RCP)是Eclipse项目的一部分,它提供了一个用于构建桌面应用程序的基础架构。RCP应用由视图、编辑器、透视图等组件构成,允许开发者专注于业务逻辑和用户界面设计,而无需从头构建底层框架。...
总结来说,`rcp自己通过扩展点新建java项目`是一个涉及到Eclipse RCP插件开发、扩展点注册、向导实现和资源管理的综合性任务。掌握这个过程不仅有助于提升Eclipse RCP应用的用户体验,也是深入理解Eclipse插件系统的...
- **广泛的应用支持**:许多知名应用都采用了Eclipse RCP作为其基础框架,这表明它已经经过了充分的测试和验证,在稳定性和性能方面都有很好的表现。 - **高度可定制性**:Eclipse RCP提供了高度的灵活性和可扩展性...
本文将详细介绍Eclipse RCP的基本概念、开发流程以及所需的基础知识。 #### 二、Eclipse 简介 Eclipse 是一款由IBM发起并捐赠给开源社区的集成开发环境(IDE)。随着时间的发展,Eclipse 已经不仅仅是一个Java IDE,...
总结来说,将RCP形式转换为插件形式是一项涉及项目分析、架构设计、代码迁移、配置调整等多个环节的工作。这一过程旨在提升软件的模块化、可扩展性和维护性,使得应用更加灵活,适应不断变化的需求。通过这种方式,...
总结来说,TC13-Teamcenter开发模式的RCP-Eclipse配置手册是为开发者提供了一套详尽的步骤,帮助他们建立和优化开发环境,以高效地进行Teamcenter的插件开发。从环境准备、配置到实际开发和部署,每个环节都有清晰的...