eclipse rcp 基础知识 小结

1. Workbench 工作台:为eclipse提供用户界面。
2. Workspace工作区:负责管理用户资源的插件。
3. Help帮助系统:具有与eclipse 平台本身相当的可扩展能力。
4. run-time 运行平台:它在启动时检查安装了哪些插件,并创建关于他们的注册表信息,插件在实际需要时才加载。
5. jdt java开发工具。
6. pde 插件开发工具。

Eclipse是各种插件的集合,但总体而言,插件开发有两种提供方式,一种是插件集构建的应用,拥有自己的程序入口,如Eclipse平台在Windows下通过点击eclipse.exe可以进入。另一种是以扩展的方式提供的插件集,它们通常不是完整的,也没有自己的程序入口,仅用以加入到已存在的平台中进行辅助性的开发,如GEF、EMF、CDT等。
Application通过扩展来定义,该扩展指定一个类(扩展点)作为主程序的入口。Application必须实现IplatformRunable接口,由此接口提供的run方法接管Eclipse平台的控制权,当Application结束时,Eclipse平台也会退出。

Products运行于Application之上,它主要提供典型应用程序的基本界面的实现,例如闪屏、windows图标等。一个Eclipse安装中可能存在多个Application和Product,但是在同一时刻只能运行一个Application和一个Product
Eclipse是各种插件的集合,但总体而言,插件开发有两种提供方式,一种是插件集构建的应用,拥有自己的程序入口,如Eclipse平台在Windows下通过点击eclipse.exe可以进入。另一种是以扩展的方式提供的插件集,它们通常不是完整的,也没有自己的程序入口,仅用以加入到已存在的平台中进行辅助性的开发,如GEF、EMF、CDT等。


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 Project中的MyRcpProjectWorkbenchAdvisor类中的public void initialize(IWorkbenchConfigurer configurer)方法中加入 WorkbenchPlugin.DEBUG = true 就可以打印出我们想要的StackTrace了。
具体测试代码如下。

public void initialize(IWorkbenchConfigurer configurer){

WorkbenchPlugin.DEBUG = true;
configurer.setSaveAndRestore(true);
// Test code
String s = null;
s.length();
//

}
这样编写在开发阶段进行调试。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Eclipse Rich Client Application 开发自学教程 For The Eclipser salever 2011-3-28 根据最新版本的Eclipse 3.6 重新编写,每章都可独立于其他章节,内附的代码均可直接运行, 适合Eclipse 开发者参考。 声明 本教程素材来源于网络,经过本人的整理、添加以及部分的重写,将原有的 Eclipse3.3 版本的 一些内容完全迁移到 Eclipse3.6 版本上来。基于开源以及分享的精神,特地将教程分享到网络上, 希望所有需要的朋友因此而受益,也希望大家能有版本意识,转载时注明来自 salever@126.com。 之前有一套基于 Eclipse3.3 版本的教程,也是本人整理,由于本人的疏忽,导致网络上的版本 各不相同,但分享已久,无法改变,希望大家谅解并使用新版本的教程。 本教程由本人发布在 www.ceclipse.org 以及本人的 blog 中,希望对大家有所帮助,也希望各位 喜欢分享的朋友在转载时注明,谢谢。 序 Eclipse RCP 允许开发者使用 eclipse结构风格设计弹性的可扩展的应用程序,可重用Eclipse中 已存在的方法和编码模式。俗话说,万事开头难。Eclipse RCP 入手可能会比较困难、费时。接下 来我们将主要讲述如何让RCP 工作. 基于 Eclipse 3.6。 将涉及以下内容:创建第一个 RCP 程序,创建菜单和工具栏,查看,编辑,对话,外部 JAR 的用法,向一个 RCP应用程序产品中添加标志和帮助。 每一章都基本独立于其他章节。 目录 1 富客户端平台 ...................................................................................................................................... 9 1.1 概述 ............................................................................................................................................... 9 1.2 ECLIPSE RCP 建设风格——插件,扩展和扩展点 ..................................................................... 9 1.3 RCP与PLUGIN ................................................................................................................................ 9 2 创建第一个RCP程序 ........................................................................................................................ 11 2.1 创建一个RCP程序 ...................................................................................................................... 11 2.2 启动RCP程序 .............................................................................................................................. 15 2.3 程序VS 产品 .............................................................................................................................. 17 2.4 维护LAUNCH配置 ....................................................................................................................... 17 2.5 可能的APPLICATION ID 错误: .................................................................................................. 20 2.6 应用程序的PLUGIN ID ................................................................................................................ 21 3 ACTIONS的用法(菜单栏和工具栏) ............................................................................................ 22 3.1 概述 ............................................................................................................................................. 22 3.2 通过编码添加 ............................................................................................................................. 22 3.3 “扩展”方式添加菜单和工具栏 .................................................................................................. 25 3.4 添加全局快捷键 ......................................................................................................................... 31 3.4.1 Command+Handler+Binding 绑定 ...................................................................................... 31 3.4.2 Action+Command+Binding绑定 .......................................................................................... 33 4 系统托盘 ............................................................................................................................................ 37 5 视图 .................................................................................................................................................... 42 5.1 添加示例视图 ............................................................................................................................. 42 5.2 添加自定义视图 ......................................................................................................................... 47 5.3 向VIEW里添加ACTION ................................................................................................................ 52RCP/Plug-in开发自学教程 版权所有 转载请注明salever@126.com - 5 - 6 编辑器 ................................................................................................................................................ 58 6.1 概述 ............................................................................................................................................. 58 6.2 创建工程 ..................................................................................................................................... 58 6.3 添加编辑器 ................................................................................................................................. 59 6.4 调用编辑器 ................................................................................................................................. 67 6.5 实例:文本编辑器实现 ............................................................................................................. 68 6.5.1 新建工程 .............................................................................................................................. 68 6.5.2 添加菜单栏和工具栏 .......................................................................................................... 70 6.5.3 添加编辑器 .......................................................................................................................... 75 7 对话框 ................................................................................................................................................ 86 7.1 概述 ............................................................................................................................................. 86 7.2 预定义的对话框 ......................................................................................................................... 87 7.2.1 概述 ...................................................................................................................................... 87 7.2.2 创建工程 .............................................................................................................................. 87 7.2.3 添加菜单 .............................................................................................................................. 87 7.2.4 调用对话框 .......................................................................................................................... 87 7.3 用户自定义对话框 ..................................................................................................................... 89 7.3.1 概述 ...................................................................................................................................... 89 7.3.2 创建SWT/JFace工程 ........................................................................................................... 89 7.3.3 自定义Dialog ....................................................................................................................... 91 7.3.4 说明 ...................................................................................................................................... 97 8 向导 .................................................................................................................................................... 98 8.1 概述 ............................................................................................................................................. 98 8.2 示例 ............................................................................................................................................. 98 9 首选项 .............................................................................................................................................. 106RCP/Plug-in开发自学教程 版权所有 转载请注明salever@126.com - 6 - 9.1 首选项 ....................................................................................................................................... 106 9.2 使用首选项 ............................................................................................................................... 106 9.3 首选项页 ................................................................................................................................... 112 10 添加状态栏 .................................................................................................................................... 117 10.1 简介 ......................................................................................................................................... 117 10.2 安装状态栏 ............................................................................................................................. 117 10.3 初始化状态条 ......................................................................................................................... 118 10.4 控制状态栏 ............................................................................................................................. 120 11 透视图 ............................................................................................................................................ 123 11.1 简介 ......................................................................................................................................... 123 11.2 添加透视图 ............................................................................................................................. 123 11.3 显示透视图工具栏 ................................................................................................................. 128 11.4 显示透视图菜单 ..................................................................................................................... 130 12 进度条 ............................................................................................................................................ 133 12.1 简介 ......................................................................................................................................... 133 12.2 进度条对话框 ......................................................................................................................... 133 12.3 JOB进度条 ................................................................................................................................ 135 13 使用第三方JAR ............................................................................................................................. 140 13.1 概述 ......................................................................................................................................... 140 13.2 向构建路径中添加JAR ........................................................................................................... 140 13.3 使JAR在你的运行路径里有效 ................................................................................................ 141 14 提示和策略 .................................................................................................................................... 143 14.1 控制台日志 ............................................................................................................................. 143 14.2 保存用户的布局 ..................................................................................................................... 145RCP/Plug-in开发自学教程 版权所有 转载请注明salever@126.com - 7 - 14.3 获得DISPLAY ............................................................................................................................ 146 14.4 使用ECLIPSE的“保存”ACTION ................................................................................................. 146 14.5 向你的程序添加错误日志视图 ............................................................................................. 146 15 产品 ................................................................................................................................................ 149 15.1 概述 ......................................................................................................................................... 149 15.2 PRODUCT配置文件 ................................................................................................................... 149 15.3 测试你的产品 ......................................................................................................................... 153 15.4 欢迎页面 ................................................................................................................................. 153 15.5 商标 ......................................................................................................................................... 154 15.6 风格化LAUNCHING .................................................................................................................. 155 15.7 发布你的产品 ......................................................................................................................... 156 15.8 创建一个帮助插件工程 ......................................................................................................... 159 16 专题一 ECLIPSE的版本和发行包 .............................................................................................. 164 16.1 版本 VERSION ......................................................................................................................... 164 16.1.1 版本的理解 ...................................................................................................................... 164 16.1.2 Eclipse的版本 ................................................................................................................... 164 16.1.3 版本的选择和下载 .......................................................................................................... 164 16.2 发行包 EDITION ...................................................................................................................... 166 16.2.1 发行包的理解 .................................................................................................................. 166 16.2.2 Eclipse的发行包 ............................................................................................................... 166 17 专题二 ECLIPSE的国际化与语言包 .......................................................................................... 169 17.1 国际化 ..................................................................................................................................... 169 17.1.1 Externalize Strings ............................................................................................................ 169 17.1.2 中文属性文件 .................................................................................................................. 175 17.1.3 国际化文件 ...................................................................................................................... 176 17.1.4 指定语言环境 .................................................................................................................. 176RCP/Plug-in开发自学教程 版权所有 转载请注明salever@126.com - 8 - 17.1.5 Propedit工具 ..................................................................................................................... 177 17.2 语言包 ..................................................................................................................................... 177 17.2.1 Babel小组 ......................................................................................................................... 177 17.2.2 中文语言包的下载 .......................................................................................................... 178 18 专题三 DECORATOR与MARKER的使用 ................................................................................. 180 18.1 简介 ......................................................................................................................................... 180 18.2 扩展DECORATOR ...................................................................................................................... 180 18.3 扩展MARKER ........................................................................................................................... 184 19 专题四 RUN/DEBUG LAUNCHER实现 .................................................................................... 190 19.1 ECLIPSE RUN/DEBUG 实现流程 ............................................................................................... 190 19.2 扩展CONFIGURATIONTYPE ....................................................................................................... 192 19.3 扩展ILAUNCHSHORTCUT ......................................................................................................... 194 19.4 创建RUN/DEBUG CONFIGURATION界面 .................................................................................. 197 19.5 指定RUN/DEBUG显示图片 ..................................................................................................... 204 19.6 说明 ......................................................................................................................................... 205 20 专题五 EQUINOX P2 方式实现RCP自动更新 ......................................................................... 207 20.1 概述 ......................................................................................................................................... 207 20.2 示例 ......................................................................................................................................... 207 20.2.1 Feature概念 ....................................................................................................................... 207 20.2.2 配置Product ..................................................................................................................... 210 20.2.3 配置Feature ...................................................................................................................... 211 20.2.4 product导出 ...................................................................................................................... 213 20.2.5 配置Equinox P2 ............................................................................................................... 214 20.2.6 配置 Update Site ............................................................................................................. 215 21 专题六 COMMON NAVIGATOR FRAMEWORK初探 ............................................................. 216
目 录 1.富客户端平台 1 1.1.概述 1 1.2.Eclipse RCP 建设风格——插件,扩展和扩展点 1 2.创建你的第一个RCP程序 1 2.1.创建一个RCP程序 2 2.2.启动你的RCP程序 5 2.3.应用程序VS 产品 6 3.应用程序里的插件ID 7 4.Actions的用法(菜单和工具栏) 7 4.1.概述 7 4.2.通过编码添加 8 4.3.由“扩展”方式向程序添加菜单和工具栏 11 5.添加组合键 19 5.1.概述 19 5.2.声明actions的组合键 19 6.系统托盘 24 7.外观 30 7.1.向程序中添加视图模板 31 7.2.向应用程序添加VIEW 36 7.3.向VIEW里添加action 40 8.和编辑器一起工作 51 8.1.概述 51 8.2.创建工程 51 8.3.创建并准备domain 模型 51 8.4.在视口中使用domain模型 57 8.5.加入编辑器 58 8.6.调用编辑器 66 8.7.向编辑器提供内容 70 9.对话框 71 9.1概述 71 9.2.预定义的对话框 71 9.2.1.概述 71 9.2.2.创建工程 71 9.2.3.声明action 71 9.2.4.调用对话框 71 9.3.用户自定义对话框 74 9.3.1.概述 74 9.3.2.创建工程 74 9.3.3.声明action 74 9.3.4.声明action 74 9.3.5.创建对话框 75 10.向导(wizard) 77 10.1.概述 77 10.2.例子 77 11.首选项 85 11.1 首选项 85 11.2.使用首选项 85 11.3.首选项页 91 12.添加状态条 97 12.1.安装状态条 97 12.2.共享状态条 98 13.透视 103 13.1.向你的程序中添加透视图 103 13.2.使透视图可选。 107 13.2.1.使透视图可由一个coolbar可选 107 13.2.2.使透视图可通过菜单选择。 109 14.进度报告 112 15.将外部类包含进你的程序 118 15.1.概述 118 15.2.向构建路径中添加jar 118 15.3.使jar在你的运行路径里有效 119 16.提示和策略 120 16.1.控制台日志 120 16.2.保存用户的布局 121 16.3.获得display 122 16.4.使用eclipse的“保存”action 123 16.5.装载模型 127 16.6.向你的程序添加错误日志视口 127 17.制造一个产品 129 17.1.概述 129 17.2.创建一个工程 130 17.3.测试你的产品 134 18.商标 134 18.1.欢迎页面 134 18.2.商标 135 18.3.风格化launcher 136 19.发布你的产品 137 20.发布引入外部jar的产品 141 20.1.整合外部jar和第三方库 141 Tip 142 21.1.创建一个新工程 144 21.2.创建一个产品 144 21.3.添加依赖性 145 21.4.向程序中添加action 146 21.5.创建一个帮助插件工程////原著写的不好 149 22.附录:配置文件 152 22.1.概述 152 22.2..project 153 22.3.Manifest.MF 154 23.附录:使用接口技术 154 23.2.Jface 154

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值