如何使用eclipse svn插件安装插件

Eclipse插件开发方法与实战_百度百科
关闭特色百科用户权威合作手机百科 收藏 查看&Eclipse插件开发方法与实战本词条缺少概述、名片图,补充相关内容使词条更完整,还能快速升级,赶紧来吧!作&&&&者甘树满,王秀明出版社电子工业出版社
丛书名: Java开发专家
上架时间:
出版日期:2006 年10月
开本:16开
版次:1-1初涉eclipse开发的读者,就像深陷丛林的冒险者,多少会有点迷茫。如果你是一位非常优秀的探险家,凭直觉可能很快就会找到出路。但如果你在这方面缺乏经验的话,最终可能会找到出口,但一定会走很多弯路。本书并不能算“指南针”性的教材,但希望能引领读者认识eclipse的真面目,并能快速融入到 eclipse的开发中去。.
本书分为4个部分共24章,以插件开发为中心,围绕插件开发主要介绍swt/jface的应用、插件扩展点的实现,以及gef、emf和rcp的相关知识。本书所有讲解的范例都能在附书光盘中找到可运行的源代码,并且已经按章节归类。本书语言深入浅出,通俗易懂,通过大量具有典型性和实用价值的实例,以及形象的比喻,把复杂的问题和难懂的概念简单化,从多个方面引导读者进入eclipse插件开发。..
附书光盘内容为书中实例源代码及相关插件。
本书对于eclipse插件开发的新手和有一定eclipse开发经验的程序员普遍适用。第1部分 eclipse入门篇.
第1章 eclipse概述 3
1.1 eclipse项目背景 3
1.2 eclipse简介 3
1.2.1 开放式体系结构 4
1.2.2 平台体系结构 4
1.3 eclipse的主要功能特性 5
1.3.1 文件存放(workspace) 5
1.3.2 eclipse开发环境(workbench) 6
1.3.3 编译与运行 7
1.3.4 版本管理 7
1.4 工作台 8
1.4.1 资源 8
1.4.2 资源层次结构 8
1.4.3 构建 8
1.5 运行时概述 9
1.5.1 运行时插件模型 9
1.5.2 插件 10
1.5.3 bundle 10
1.6 开源的选择 11
.1.7 小结 12
第2章 eclipse安装及java开发 13
2.1 eclipse开发环境的安装 13
2.1.1 jdk安装 13
2.1.2 eclipse安装 14
2.2 java开发工具jdt 14
2.2.1 视角 14
2.2.2 视图 15
2.2.3 编辑器 16
2.3 在eclipse中开发java程序 16
2.3.1 java项目 16
2.3.2 新建“hello,world”程序 17
2.3.3 运行程序与调试 18
2.3.4 类的构建路径 19
2.3.5 项目构建 20
2.4 其他功能 20
2.4.1 查看源代码 20
2.4.2 重构 21
2.4.3 生成javadoc文档 21
2.5 eclipse快捷键 22
2.5.1 编辑相关快捷键 22
2.5.2 查看和定位快捷键 23
2.5.3 调试快捷键 24
2.5.4 常用编辑器快捷键 24
2.5.5 其他快捷键 24
2.6 小结 25
第3章 eclipse的使用 27
3.1 eclipse插件安装 27
3.1.1 拷贝安装 27
3.1.2 links安装 28
3.1.3 update安装 29
3.1.4 查看插件 30
3.2 开发简单的web应用 31
3.2.1 安装配置myeclipse 31
3.2.2 创建web应用 32
3.2.3 部署并运行web应用 35
3.3 小结 36
第2部分 swtjface开发篇
第4章 swt/jface 入门 39
4.1 swt/jface简介 39
4.1.1 swt/jface概述 39
4.2.2 swt/jface基本特性 40
4.2 swt“hello world”程序 41
4.2.1 加入swt依赖的包 41
4.2.2 “hello world”程序 43
4.2.3 运行“hello world”程序 43
4.3 jface“hello world”程序 44
4.3.1 “hello world”程序 44
4.3.2 运行“hello world”程序 45
4.4 在swt中使用swing组件 46
4.4.1 在swt的组件上加入swing的组件 46
4.4.2 程序运行效果 48
4.5 小结 48
第5章 swt常用组件 49
5.1 control类 49
5.1.1 control类的继承关系 49
5.1.2 control类的常用方法 49
5.2 button组件 50
5.2.1 button组件实例 50
5.2.2 button组件的风格 52
5.2.3 button组件的对齐方式 52
5.2.4 加入图片及按钮组合属性 52
5.3 label组件 53
5.3.1 label组件实例 53
5.3.2 label组件的风格和对齐方式 54
5.3.3 加入图片及组合属性 55
5.4 text组件 55
5.4.1 text组件实例 55
5.4.2 text组件的风格 56
5.5 combo组件 57
5.5.1 combo组件实例 57
5.5.2 combo组件的风格 59
5.6 list组件 59
5.6.1 list组件实例 59
5.6.2 list组件的风格 61
5.7 小结 61
第6章 swt事件 63
6.1 鼠标事件 63
6.1.1 mouselistener接口 63
6.1.2 mousemovelistener接口 64
6.1.3 mousetracklistener接口 64
6.1.4 鼠标事件实例 65
6.2 键盘事件 67
6.2.1 keylistener接口 67
6.2.2 键盘事件实例 67
6.3 焦点事件 69
6.3.1 focuslistener接口 69
6.3.2 焦点事件实例 69
6.4 窗口控制事件 71
6.4.1 controllistener接口 71
6.4.2 窗口控制事件实例 71
6.5 选择组件事件 72
6.5.1 selectionlistener接口 73
6.5.2 选择组件事件实例 73
6.6 其他常用事件 74
6.6.1 helplistener、verifylistener和modifylistener监听器的功能 74
6.6.2 helplistener、verifylistener和modifylistener监听器实例 75
6.7 小结 77
第7章 swt布局管理 79
7.1 概述 79
7.2 filllayout布局 80
7.2.1 filllayout的风格 80
7.2.2 filllayout布局实例 80
7.3 rowlayout布局 82
7.3.1 rowlayout的风格 82
7.3.2 rowlayout布局实例 83
7.4 gridlayout布局 84
7.4.1 gridlayout的风格 85
7.4.2 griddata的相关属性 85
7.4.3 gridlayout 布局实例 87
7.5 formlayout布局 91
7.5.1 formlayout布局信息 91
7.5.2 formlayout布局实例 92
7.6 创建自己的布局 96
7.6.1 layout类 96
7.6.2 创建自己的布局类 97
7.7 小结 100
第8章 swt容器及其他组件 101
8.1 swt容器 101
8.1.1 composite组件 101
8.1.2 group组件 102
8.1.3 tabfolder和tabitem组件 104
8.1.4 sashform组件 105
8.2 菜单和工具栏 108
8.2.1 menu和menuitem组件 108
8.2.2 toolbar和toolitem组件 111
8.2.3 coolbar和coolitem组件 113
8.3 其他组件 115
8.3.1 slider组件 115
8.3.2 scale组件 116
8.3.3 progressbar组件 118
8.4 小结 120
第9章 viewer组件 121
9.1 treeviewer 121
9.1.1 treeviewer构建步骤 121
9.1.2 内容提供器(itreecontentprovider) 121
9.1.3 标签提供器(ilabelprovider) 123
9.1.4 treeviewer实例 123
9.2 tableviewer 127
9.2.1 tableviewer构建步骤 127
9.2.2 内容提供器(istructured contentprovider) 128
9.2.3 标签提供器(itablelabelprovider) 128
9.2.4 tableviewer实例 129
9.3 listviewer 138
9.3.1 listviewer功能 138
9.3.2 listviewer实例 138
9.4 小结 142
第10章 对话框 143
10.1 消息对话框 143
10.1.1 消息对话框的功能 143
10.1.2 消息对话框实例 144
10.2 输入对话框 147
10.2.1 输入对话框的功能 147
10.2.2 输入对话框实例 147
10.3 进度监视对话框 149
10.3.1 进度监视对话框的功能 149
10.3.2 进度监视对话框实例 150
10.4 自定义对话框 153
10.4.1 带标题区域对话框 153
10.4.2 自定义对话框实例 153
10.5 常用系统对话框 156
10.5.1 打印对话框(printdialog) 157
10.5.2 颜色对话框(colordialog) 157
10.5.3 字体对话框(fontdialog) 158
10.5.4 文件对话框(filedialog) 159
10.5.5 目录对话框(directorydialog) 159
10.6 小结 160
第11章 swt的其他应用 161
11.1 拖放 161
11.1.1 拖放的功能 161
11.1.2 拖放的实现 162
11.2 线程 164
11.2.1 线程同步和异步 164
11.2.2 线程同步和异步的实现 164
11.3 剪贴板 166
11.3.1 剪贴板的功能 166
11.3.2 剪贴板的实现 166
11.4 图形上下文 168
11.4.1 图形上下文的实现 168
11.4.2 自定义组件 170
11.5 鼠标形状(cursor) 172
11.6 小结 174
第3部分 eclipse插件开发篇
第12章 插件入门 177
12.1 什么是插件 177
12.2 一个简单的插件 178
12.2.1 创建“hello,world”插件 178
12.2.2 调试“hello,world”插件 179
12.2.3 插件打包 180
12.3 插件清单文件介绍 181
12.3.1 overview:描述了插件的基本信息 182
12.3.2 dependencies:描述了插件的依赖关系 182
12.3.3 runtime:指明了运行时的classpath 183
12.3.4 extensions:指明插件实现的扩展点 183
12.3.5 extension points:指明了用户插件提供的扩展点 184
12.4 常用扩展点的描述 185
12.4.1 org.eclipse.ui.editors:代表一个编辑器窗口 185
12.4.2 org.eclipse.ui.views:代表一个视图窗口 185
12.4.3 org.eclipse.ui.perspectives:代表一个扩展视角 187
12.5 小结 187
第13章 视图扩展点的实现 189
13.1 views扩展点的介绍 189
13.1.1 视图分类 189
13.1.2 常用视图可实现的功能 190
13.2 “hello,world”视图 190
13.2.1 创建“hello,world”视图插件 190
13.2.2 “hello,world”插件扩展点 191
13.2.3 “org.eclipse.ui.views”扩展点的实现类“helloworldview” 193
13.2.4 运行“hello,world”视图 194
13.3 “tree viewer”视图 195
13.3.1 创建“tree viewer”视图插件 195
13.3.2 “tree viewer”插件扩展点 196
13.3.3 “org.eclipse.ui.views”扩展点的实现类“treeviewtest” 196
13.3.4 运行“tree viewer”视图 202
13.4 “image viewer”视图 202
13.4.1 创建“image viewer”视图插件 202
13.4.2 “org.eclipse.ui.viewactions”扩展点的实现类“pushactiondelegate” 205
13.4.3 “org.eclipse.ui.views”扩展点的实现类“imageview” 206
13.4.4 运行“image viewer”视图 207
13.5 debug视图的实现.. 208
13.5.1 查找debug插件 208
13.5.2 导入debug插件 208
13.5.3 debug插件中视图的扩展点 209
13.6 小结 211
第14章 编辑器扩展点的实现 213
14.1 editors扩展点的介绍 213
14.1.1 编辑器分类 213
14.1.2 常用编辑器可实现的功能 213
14.1.3 编辑器和视图的区别 214
14.2 “hello,world”编辑器 214
14.2.1 “hello,world”编辑器插件 214
14.2.2 “hello,world”插件扩展点 215
14.2.3 “org.eclipse.ui.editors”扩展点的实现类“helloworldeditor” 216
14.2.4 运行“hello,world”编辑器 218
14.3 多页签编辑器的实现 219
14.3.1 创建多页签编辑器插件 219
14.3.2 多页签编辑器插件扩展点 220
14.3.3 “org.eclipse.ui.editors”扩展点的实现类“multipageeditor” 220
14.3.4 “org.eclipse.ui.editors”扩展点的辅助类“multipageeditor contributor” 225
14.3.5 运行多页签编辑器 227
14.4 简单的文本编辑器 227
14.4.1 创建文本编辑器插件 227
14.4.2 “org.eclipse.ui.editors”扩展点的实现类“fileeditor” 228
14.4.3 运行文本编辑器 231
14.5 小结 231
第15章 项目相关扩展点的实现 233
15.1 项目中常用的扩展 233
15.2 视角 233
15.2.1 简介 234
15.2.2 “org.eclipse.ui.perspective extensions”扩展点 234
15.2.3 “org.eclipse.ui.perspectives”扩展点 237
15.3 菜单工具栏 239
15.3.1 “org.eclipse.ui.actionsets”扩展点信息 239
15.3.2 “org.eclipse.ui.actionsets”扩展点的实现类“sampleaction” 240
15.4 项目相关特性 241
15.4.1 项目扩展点 241
15.4.2 “org.eclipse.core.resources. natures”扩展点及实现类 241
15.4.3 “org.eclipse.core.resources. builders”扩展点及实现类 243
15.4.4 “org.eclipse.ui.newwizards”扩展点及实现类 246
15.4.5 “org.eclipse.ui.preferencepages”扩展点及实现类 249
15.5 小结 252
第16章 帮助相关扩展点的实现 253
16.1 联机帮助 253
16.1.1 联机帮助扩展点的实现 253
16.1.2 联机帮助文档的结构 254
16.1.3 在联机帮助中在线调用java类 256
16.2 欢迎界面帮助 257
16.2.1 产品扩展点 258
16.2.2 欢迎界面扩展点 258
16.2.3 插件清单文件 259
16.2.4 扩展点实现类 259
16.2.5 调试欢迎界面插件 261
16.3 上下文帮助 261
16.3.1 定义上下文帮助 261
16.3.2 定义弹出菜单和相应对话框 262
16.3.3 运行上下文帮助插件 264
16.4 小结 266
第17章 其他扩展点的实现 267
17.1 startup扩展点的实现 267
17.1.1 “org.eclipse.ui.startup”扩展点的实现 267
17.1.2 “org.eclipse.ui.startup”对应的实现类 267
17.1.3 “org.eclipse.ui.startup”对应插件运行效果 268
17.2 “propertypages”扩展点的实现 268
17.2.1 “org.eclipse.ui.propertypages”扩展点的实现 268
17.2.2 “org.eclipse.ui.propertypages”对应的实现类 269
17.2.3 “org.eclipse.ui.propertypages”对应插件运行效果 272
17.3 小结 273
第18章 插件开发辅助功能 275
18.1 属性视图 275
18.1.1 ipropertysource接口 276
18.1.2 属性视图的实现 277
18.2 大纲视图 279
18.2.1 icontentoutlinepage接口 279
18.2.2 大纲视图的实现 281
18.3 构造editorinput 282
18.3.1 ieditorinput接口 282
18.3.2 ieditorinput的实现 283
18.4 操纵编辑器 285
18.4.1 查找编辑器 285
18.4.2 打开和关闭编辑器 286
18.5 插件国际化 286
18.5.1 国际化插件的创建 287
18.5.2 类的国际化 287
18.5.3 plugin.xml文件格式化 289
18.5.4 调试国际化插件 289
18.6 小结 290
第4部分 eclipse提高篇
第19章 draw2d简介及实现 293
19.1 draw2d简介 293
19.1.1 draw2d简介 293
19.1.2 “hello world”实现 294
19.2 图形 295
19.2.1 图形(figure)的功能 295
19.2.2 图形的实现 295
19.3 连线 296
19.3.1 连线(connection)的功能 297
19.3.2 连线的实现 297
19.4 uml关系图实现 299
19.4.1 uml关系图实现的要求 299
19.4.2 compartmentfigure实现 300
19.4.3 umlclassfigure实现 301
19.4.4 连线及测试类 302
19.5 小结 304
第20章 gef原理及实现 305
20.1 gef概述 305
20.1.1 gef简介 305
20.1.2 gef工作原理 305
20.2 模型 306
20.2.1 模型的功能 306
20.2.2 模型的实现 306
20.3 视图 311
20.3.1 视图的功能 311
20.3.2 视图的实现 311
20.4 控制器 312
20.4.1 控制器的功能 312
20.4.2 控制器的实现 313
20.5 请求和编辑策略 316
20.5.1 请求和编辑策略(request and editpolicies) 316
20.5.2 编辑策略的实现 317
20.6 命令 318
20.6.1 命令(commands)的功能 318
20.6.2 命令的实现 318
20.7 模型同步 320
20.7.1 模型同步的功能 320
20.7.2 模型同步的实现 320
20.8 选项板 321
20.8.1 选项板(paletteroot)的功能 321
20.8.2 选项板的实现 322
20.9 小结 323
第21章 gef表模型编辑器的实现 325
21.1 程序的软件结构 325
21.1.1 实现功能 325
21.1.2 程序的界面要求 326
21.2 编辑器的实现 326
21.2.1 编辑器的功能 326
21.2.2 编辑器的实现 327
21.3 模型的实现 334
21.3.1 propertyawareobject类 334
21.3.2 table类 335
21.3.3 column类 339
21.3.4 schema类 341
21.3.5 relationship类 343
21.4 视图的实现 344
21.4.1 tablefigure类 344
21.4.2 schemafigure类 346
21.4.3 columnsfigure类 346
21.5 控制器的实现 347
21.5.1 tablepart的实现 348
21.5.2 relationshippart的实现 357
21.6 editpartfactory和palette的实现 359
21.6.1 schemaeditpartfactory 359
21.6.2 paletteroot 360
21.7 editpolicy的实现 362
21.7.1 tablenodeeditpolicy(模型连线的编辑策略) 362
21.7.2 tablelayouteditpolicy(子模型布局的编辑策略) 364
21.7.3 tablecontainereditpolicy(处理模型创建请求的编辑策略) 366
21.7.4 tableeditpolicy(模型编辑的编辑策略) 367
21.7.5 tabledirecteditpolicy(处理直接编辑的编辑策略) 368
21.8 command的实现 369
21.8.1 模型连线命令 369
21.8.2 模型拖动命令 372
21.8.3 模型创建命令 373
21.8.4 模型删除命令 374
21.8.5 模型直接编辑命令 377
21.9 大纲的实现 378
21.10 小结 380
第22章 emf的使用 381
22.1 emf的简介 381
22.2 使用emf生成模型 382
22.2.1 定制类关系图 382
22.2.2 生成模型代码 383
22.3 在gef框架中使用emf模型 384
22.3.1 模型 384
22.3.2 editpart的修改 384
22.3.3 elementfactory的修改 385
22.3.4 处理自定义数据类型 386
22.3.5 保存和载入模型 387
22.4 小结 388
第23章 rcp技术 389
23.1 rcp的简介 389
23.2 建立一个rcp的应用 389
23.2.1 创建rcp应用 390
23.2.2 运行rcp应用 390
23.2.3 导出rcp应用 391
23.3 rcp的组成部分 393
23.3.1 plugin.xml 393
23.3.2 应用的入口application 395
23.3.3 工作台applicationworkbench advisor 395
23.3.4 工作台窗口application workbenchwindowadvisor 397
23.3.5 工作台“action bar”applicationactionbaradvisor 397
23.3.6 应用的视角(perspective) 399
23.4 小结 400
第24章 eclipse进阶 401
24.1 选择与监听 401
24.1.1 选择事件提供者(selection provider) 402
24.1.2 选择服务(selection service) 403
24.1.3 选择事件监听器(selection listener) 404
24.1.4 实例 405
24.2 命令堆栈 408
24.2.1 命令堆栈(commandstack) 408
24.2.2 监听器 410
24.3 适配器 410
24.3.1 适配器接口(iadaptable) 411
24.3.2 适配器的实现 412
24.4 ui持久化 413
24.4.1 持久化机制 413
24.4.2 ui持久化与恢复的实现 414
24.5 深入workbench 418
24.5.1 workbench中实现类的关系 418
24.5.2 part的生命周期 419
24.6 资源监听与访问 421
24.6.1 资源监听器 421
24.6.2 资源访问器 422
24.6.3 资源监听的实现 423
24.7 小结 425
附录a 插件资源列表 427
附录b 插件开发法则 431
b.1 扩展者法则 431
b.2 促成者法则 431
b.3 发布者法则 432
附录c 在eclipse中使用junit 433
c.1 junit简介 433
c.2 eclipse开发、调试测试程序 434
附录d visual editor 437
d.1 eclipse visual editor项目介绍 437
d.2 visual editor的内幕 437
d.3 利用visual editor开发awt/swing应用程序 438
d.4 visual editor工具 438
d.5 创建和启用用户接口 440
d.6 运行visual class 441
d.7 visual editor对eclipse的贡献 442
附录e cvs版本管理 447
e.1 相关术语 447
e.2 工作模式 448
e.3 模块的输入与签出 448
e.4 日常操作... 450
新手上路我有疑问投诉建议参考资料 查看扫一扫下载手机客户端
扫描我,关注团购信息,享更多优惠
||网络安全
| | | | | | | | | | | | | | | |
||电子电工
汽车交通| | | | | | | | | |
||投资理财
| | | | | | | | | | | | | | | | |
| | | | | | |
| | | | | | | | | | | | | | | | | | |
| | | | | | |||
||外语考试
| | | | | | | | |
| 视频教程|
(特价书)Eclipse插件开发(原书第3版)(开发Eclipse商业插件的应用指南)
定价:¥85.00
校园优惠价:¥34.00 (40折)
促销活动:
此商品暂时缺货(可留下联系方式,到货将第一时间通知您)
如果您急需团购,可点击“团购急调”按钮将此书加入购物车,由客服人员为您协调调货!
注:特价书资源有限,售完即止,部分书无光盘等,图书均有盖章或打孔,页面轻微折损等瑕疵,对品相有要求者慎重购买。
电话号码:
*邮箱地址:
原书名:Eclipse Plug-ins (3rd Edition)
原出版社:
ISBN:7上架时间:出版日期:2010 年5月开本:16开页码:551版次:3-1
所属分类:
  一本由两位长期从事Java商业软件开发的技术专家编写的关于开发Eclipse商业插件的指南  
既包含了开发Eclipse插件的基础理论,也涵盖了大量关于Eclipse插件开发的细节
  本书是一本由两位长期从事java商业软件开发的技术专家编写的关于开发eclipse商业插件的指南。本书主要介绍了开发eclipse商业插件的完整过程,并从标准窗口小部件工具集、命令与操作、视图、透视图、实现帮助、国际化等方面对创建eclipse商业插件进行了详细描述。本书既包含了开发eclipse插件的基础理论,也涵盖了大量关于eclipse插件开发的细节。
本书不仅适用于eclipse插件开发的初学者,对于eclipse商业软件开发人员也有很高的参考价值。
eric clayberg是instantiations公司产品开发部高级副总裁。eric是一位具有丰富经验的软件技术专家、产品开发人员、企业家和具有超过17年商业软件开发经验的项目经理。这17年开发经验包含了12年的java开发经验和9年的eclipse开发经验。他是十几个商业java和smalltalk附加产品的主要作者和架构者,其中包括了广为流行的windowbuilder pro、codepro和获奖的va assist产品系列。他拥有麻省理工学院的理学学士学位、哈佛大学的mba学位。是两家成功的软件公司objectshare和instantiations的共同创始人之一。
dan rubel是instantiations公司的首席技术执行官。他是一名成功的商人,也是面向对象技术方面的设计与应用的专家。他具有15年以上的商业软件开发经验,其中包括了13年的java开发经验和9年的eclipse开发经验。他是几个成功的商业产品的架构师和项目经理。这些商业产品包括rcp developer、windowtester、jfactor和jkit。他在其他几个商业产品中扮演关键设计与领导角色。这些商业产品包括va assist和codepro。他拥有bucknell的理学学士学位,是instantiations公司的共同创始人之一。
instantiations是ibm高级商业伙伴,为eclipse和ibm的visualage、websphere和rational产品系列开发了许多的商业附加软件。instantiations公司是eclipse基金会成员,是eclipse开源组织的主要贡献者之一,负责eclipse collaboration tools项目(即koi项目)和eclipse pollinate项目(即beehive项目)。
第1章 使用eclipse工具 1
1.1 起步 1
1.1.1 获取eclipse 1
1.1.2 安装 2
1.2 eclipse工作台 2
1.2.1 透视图、视图和编辑器 4
1.2.2 操作 7
1.3 设置eclipse 9
1.3.1 工作台首选项 9
1.3.2 java首选项 10
1.3.3 导入与导出首选项 11
1.4 创建项目 11
1.4.1 使用新建java项目向导 12
1.4.2 .classpath和.project文件 13
1.4.3 使用java包向导 14
  Eclipse是一个开源的可扩展开发平台。它是一个用于构建、部署和管理软件生命周期的运行时的平台和应用程序框架。现今,有越来越多的软件开发人员选择使用Eclipse,不仅仅是因为它的开源特性,更重要的在于它的可扩展性。
  我们可以通过向Eclipse添加插件从而扩展它的功能。现在,有大量的插件几乎可以让Eclipse完成你所能想到的任何软件开发任务。因此,为Eclipse开发良好的插件就显得十分重要。
  本书的两位作者有十几年的商业软件开发经验,对于如何开发结构良好、质量可靠的Eclipse插件有着十分丰富的实践经验。因此,通过阅读本书,读者可以获取关于开发Eclipse商业级质量插件的、经过实践检验的相关知识。
  本书首先对Eclipse结构进行了介绍,然后通过创建并不断完善一个名为收藏夹的示例插件,阐述了开发Eclipse插件的全方位的内容。本书的结尾是关于Eclipse插件开发的一些高级话题,并列举了一些在Eclipse社区有良好口碑的商业插件。
  本书英文第3版是基于Eclipse 3.4的,而翻译本书时Eclipse的最新版本为Eclipse 3.5 Galileo。因此,在使用Eclipse 3.5开发或运行本书中的示例时,可能会存在一些区别。
  参加本书翻译的人员有:陈沛、袁芳、伍汉和、韩璐、强永刚、许飞、李婧、刘依承、贺娟娟、陈服兵、郭爱华。
  最后,虽然译者尽了最大努力想要完成好本书的翻译,试图做到准确、符合中文语言习惯,但由于译者水平有限,译文肯定存在一些不足之处。如果您发现了不足之处并能通过邮件向译者指出,译者将不胜感激!邮箱地址为。
  2010年3月
  1999年末,当Eclipse初次出现在我们面前时,我们被IBM想要解决的问题的重要性触动了。IBM打算将其所有开发环境整合于一个单一代码库之上。当时,IBM正在使用一种技术融合,它融合了C/C++、Java和Smalltalk。
  许多最重要的IBM开发工具,实际上均采用Smalltalk语言编写。Smalltalk是一种适用于创建复杂开发工具的编程语言,但它在与诸如Java之类的语言的竞争中,很快便丧失了一部分市场份额。IBM拥有世界上最多的Smalltalk开发者,然而,在IBM外部,Smalltalk并没有获得广泛的行业支持。同时,也几乎没有能够开发基于Smalltalk的各种附加软件的合格独立软件厂商(Independent Software Vendor,ISV)。
  同时,Java也提供丰富的应用程序编程接口(Application Programming Interface,API)来用于开发最新的基于Web的企业应用。更重要的是,Java是一种面向对象(Object-oriented,OO)的语言,这就意味着IBM那些高水平的面向对象开发人员可以重新发挥作用。这些为数众多的开发人员是在多年的基于Smalltalk开发各种工具过程中所培养起来的。实际上,IBM VisualAge Smalltalk和VisualAge Java(VisualAge Smalltalk是VisualAge家族的第一个产品,VisualAge Java也使用了该品牌)开发环境是由杰出的国际对象技术组织(Object Technology International,OTI)所开发的。IBM将该组织的主要目标定位于创建一个基于Java的高可扩展性集成开发环境。Eclipse就这样诞生了。
  OTI可以利用其高水平的面向对象的开发经验来开发一个具有无比强大功能、适应性和可扩展性的IDE。该组织可以重复利用众多的功能,在过去的二十年里,这些功能使得那些基于Smalltalk的IDE如此之流行。这些功能的重复利用也将IDE(集成开发环境)开发技能向前推进了一个数量级。
  Java世界从未见过如此强大、如此引人注意的Eclipse。但它就这样诞生了,和微软的.NET一道成为世界上最好的开发环境。这也使得Eclipse成为开发者努力扩大其作品使用范围的最好的平台。Eclipse是完全免费和开源的,这一事实也是很令人惊喜。这个只要有计算机就能获取的开放的、可扩展的IDE,为潜在的工具开发者提供了强大的推动力。
  Eclipse的这些特性对于我们来说也是如此。在Instantiations和早期的ObjectShare,我们花费了十几年的时间关注于为不同的IDE创建附加工具。在那时,我们已经开始为Digitalk的Smalltalk/V开发附加软件,再转到为IBM的VisualAge Smalltalk,最终为IBM的VisualAge Java(包括曾得奖的VA Assist产品和世界上最早的重构工具之一―jFactor)开发各种工具。但这些插件大多不具有良好的格式,当然,也没有较好的标准化。小范围内的共享(如VisualBasic)和来源广泛的用户自定义库折磨着这些开发环境,也在折磨着我们。
  作为IBM的高级商业伙伴,我们幸运地与负责Eclipse开发的IBM公司的众多人员建立了长期的、可信赖的合作关系。这种合作关系意味着我们可以在一种独特的位置审视相应的技术,并几乎在世界上其他人第一次听到Eclipse的一年半之前,我们就已经使用Eclipse进行日常开发。当IBM最终于2001年中向世界发布Eclipse,我们的小组为IBM开发了第一批演示程序中的一部分。在那一年随后的时间里,当IBM发布第一个基于Eclipse的商业开发工具WebSphere Studio Application Developer v4.0(v4.0是为了与其当时的VisualAge for Java v4.0保持一致),我们的CodePro产品也在同一天成为WebSphere(也适用于Eclipse)最早的可获取的商业附加软件。
  今天,CodePro产品为Eclipse及基于Eclipse的各种IDE增加了数百项功能。在过去的几年,开发CodePro给我们提供了一个机会来从其他人很少能及的高度来学习开发Eclipse的各种细节(当然除了IBM和OTI的开发者们之外,他们每天都和Eclipse呆在一起)。CodePro也作为许多在这本书中所展示的想法与技术的一个测试温床,这也为我们提供了一个从哪里开始着手撰写本书的独特视角。
  本书目标
  本书的英文版原标题为《Eclipse: Building Commercial-Quality Plug-ins》,深入描述了为Eclipse和IBM软件开发平台(Software Development Platform,SDP,IBM的商业版本Eclipse开发环境)开发商业级质量标准的扩展组件的过程。对我们而言,商业级质量是商业级标准或高标准的同义词。创建一个商业级质量的扩展组件意味着要比集成到Eclipse最小要求做得更多,也意味着要致力于商业软件产品所需达到的“合适与完善”所要求的细节。
  在Eclipse插件世界中,很少有人会花多余的时间,因而绝大部分插件都停留在开源、业余水平。对于那些创建高质量插件感兴趣的人们(这些人就是软件公司打算开发基于Eclipse的产品的主要原因)来说,有许多细节要考虑。本书致力于包含插件开发的整个过程,包括所有为达到高质量所必需的附加步骤。本书有几个互补的目标:
  ?为新用户提供使用Eclipse的简要介绍
  ?为有经验的Eclipse用户想要扩展知识与提高基于Eclipse的产品的质量提供参考
  ?为新用户和有经验的用户提供创建复杂Eclipse插件的详细教程
  前三章介绍了Eclipse开发环境,并列出创建简单插件的主要步骤。这些章的主要目的是帮助新的Eclipse开发人员很快能创建插件,并验证他们的各种想法。
  第1章向读者介绍了开发插件所必需的Eclipse最小工具集。该章主要是对Eclipse IDE和相关工具(这一主题可以独立成书)进行简要介绍。熟练的Eclipse用户可以跳过该章。
  第2章介绍了我们整本书中都将要使用的示例,同时简要介绍从开始创建一个可工作的插件的每一个步骤。第3章从较高的角度对Eclipse的基础结构和插件与扩展点的结构进行了介绍。
  第4、第5章包含标准窗口小部件集(Standard Widget Toolkit,SWT)和JFace相关内容。这二者是所有Eclipse用户界面(User Interface,UI)的基石。这两章可作为一个单独的参考;主要为用户继续学习提供足够的细节。所有这些主题的内容对于整本书籍的阅读是足够丰富的。
  接下来的章节,是本书的主要内容,主要描述了插件开发的各个方面,为读者如何解决将要面对的挑战提供深入的内容。每一章均从问题的不同角度进行阐述。包括概述、细节描述、面临挑战与解决方法的讨论、图表、屏幕截图、规范编程示例、相关API和总结。
  本书通过这样的组织结构,以便于插件项目所必需的最重要的相关知识均能在书的上半部分出现。一些有关于打包与创建的素材则放于上半部分靠后的位置(如功能与产品构建)。这种组织模式留下了几个主题。这些主题并非对每一个插件都同样重要,但对于创建商业级质量插件十分重要。这一部分主题在本书的下半部分。这些主题根据重要程度和与前述几章的相关性进行排列。比如,国际化,它并不是关键性的,如果你真正努力去学习,它也不难。然而,它对于本书的前提是十分重要的。所以我们觉得它应该成为一个我们将要讲述的主题。我们假设读者不是一个Eclipse专家(或者甚至不是一个插件开发者),我们试图带领读者浏览重要步骤的尽可能多的细节。也就是说,从某种程度来看,这一章是介绍性的。这一章也是大部分插件开发者几乎遗忘并具有很少经验的一章。
  序言一
  对于全世界数百万的开发人员、工程师和用户来说,Eclipse是一个用于工具集成的可扩展平台。对于全世界数十万利用它来开发插件或完整的工具平台的商业客户来说,Eclipse代表了一种经过验证的、可靠的、可扩展的技术。利用这种技术,人们可以快速设计、开发和部署商业产品。
  对于全世界数以千计的学生和研究者来说,Eclipse代表了一个创新、自由和实验的稳定平台。对于所有的这些个人、团队和组织来说,Eclipse是一个用于工具集成的独立于特定厂商的平台。这一平台由一个生机勃勃的Eclipse体系所支持。
  独立于特定厂商的Eclipse平台以行业标准为基础。它支持众多的工具、平台和语言。Eclipse技术是无版权费用的,并具有全世界范围内的可重新分发权。该平台是全新建造的,以达到可扩展和提供杰出工具的目标。开发Eclipse基于开源协定。该协定包含开放、透明、基于价值和合作开发等诸多特性。每一个人都能参与其中,并提供添加项。所有的计划都在公开范围内制定。该平台和开源开发组织创建了一个创新、创造性和自由的环境。在当今众多的软件工具环境中,Eclipse是独一无二的。
  软件工具行业正在经历从技术商品化到公司合并的巨大转变。新的技术尝试正在重新设计,同时工具基础结构的通用集被不断改进以成为行业标准。成功的开发者和开发模式正面临适应新技术、新的更有效的方法的挑战。旧的商业模式正面临免费软件的挑战,同时,新的商业模式逐渐涌现。
  软件工具行业非常感谢Eric Clayberg和Dan Rubel的这本权威书籍。这本书提供了一个知识库。开发人员、工程师和用户均可利用这一知识库来学习和使用Eclipse技术。这样,他们就可以对这些技术和工业变革的原动力做出响应。
  Eric和Dan拥有很长的开发软件工具的职业生涯。他们两人均拥有丰富的经验:二十年的Smalltalk开发经验、十三年的Java开发经验和九年的Eclipse开发经验。他们和众多厂商和顾客建立了良好关系,这使得他们可以第一时间使用必要元素以创建成功的软件。他们可以将这种技术的直接经验和用户体验相结合,以写出一本提供创建商业级质量Eclipse扩展项过程的详细描述的书。
  本书为新开发者提供了插件开发整个过程的介绍和概述,包括获得高质量效果的所有最佳做法。对于有经验的Eclipse开发人员来说,本书可以作为一本参考书籍。它详细讨论了API,并阐述了众多的示例。同时,本书也为新、老开发人员提供了详细的教程。Eric和Dan添加了他们丰富的用户界面开发经验,也演示了如何使用Eclipse SWT UI。SWT是所有Eclipse UI开发的基石。作者清晰地描述了创建工具软件过程中面临的开发挑战,同时提供了已验证的、深入的解决方案。
  如果你是一名开发人员、工程师或想要开发或使用Eclipse的用户,本书提供了基础知识和参考。同时,本书也提供了向开源Eclipse项目提交添加项和开发商业软件的基础知识。
  ―Skip McGaughey
  序言二
  在20世纪90年代,Java还处在早期阶段。学习Java库,只要学习四五个包中的一些类文件。今天,Java类库已经变得更大更复杂,给现在想要学习Java的开发人员带来了一个巨大的难题。与Java类似,数年时间里,Eclipse平台也逐渐成长。因此学习Eclipse 3.4需要比学习Eclipse以往版本花费更多的时间和精力。Eclipse平台的一条重要的原则就是:一个插件必须与Eclipse平台和其他插件无缝地集成。为了达到无缝集成,插件开发者必须懂得为Eclipse开发软件的最佳实践、约定和策略。本书包含了创建你为之骄傲的Eclipse插件所需要的各个方面。
  在开发Favorites插件过程中,详细讨论了Eclipse标准窗口小部件工具集(SWT,Standard Widget Toolkit)和JFace框架。这样你就可以学会如何创建专业外观的用户界面,如视图、编辑器、首选项页和对话框。除了附加的常用主题之外,还详细讨论了诸如用户界面设计等较难理解的Eclipse主题(比如,创建功能部件和产品商标)。此外,本书还给出了我见过的最好的关于使用Ant的讨论,该讨论涉及从一个目标为多个版本的Eclipse的源代码文件创建产品。
  在插件声明清单和实现插件的功能行为所必需的Java代码之间存在一种扩展点机制和重要联系,而刚开始使用Eclipse的Java开发者要理解这些内容有一定难度。本书可作为一张使用由Eclipse平台定义的插件开发环境(PDE,Plug-in Development Environment)和扩展点的路线图。本书还提供了以下内容:开发者应当了解的本应在清单中描述的插件的各个方面,如何使用已有扩展点开发插件,以及如何创建其他开发者可以进一步提交添加项的扩展点。
  当我初次接触到CodePro,我被两方面吸引住了:它给Eclipse带来的生产效率和它与Eclipse平台结合的紧密程度。在尝试使用CodePro一段时间后,它就已经成为我开发工具集不可或缺的一部分。通过描述他们在开发CodePro中获取的广泛经验,Eric和Dan完成了一项如此优异的工作。这项工作就是本书中所描述的创建高质量和专业外观的Eclipse产品所必需的插件开发的各个方面。
  ―Simon Archer
  “我经常被问到,‘有哪些关于Eclipse最好的书?’在我每一次的回答中,第一本都是本书。在我看来,对于全世界的软件开发人员来说,它是Eclipse书籍中最清晰、最切合主题的。其他Eclipse书籍往往关注于Eclipse的内部基础结构或重复Eclipse文档,而该书像激光一样地专注主题,并专注于当你想要创建软件产品所需要考虑的东西。”
  ―Bjorn Freeman-Benson
  Eclipse基金会开源组织负责人
  “这本大部头的书试图成为开发Eclipse插件的最佳实践指南。在我看来,在这一方面,它做得很成功。在你想要分发你所开发的插件之前,请看看这本书。”
  ―Ernest Friedman-Hill
  “如果你想找一本Eclipse插件开发相关书籍作为指南,那就是本书了。虽然还有其他关于Eclipse的书籍,但很少有像本书这么深入的。”
  ―Simon Archer
  “本书对我们团队的每一名成员都是非常宝贵的培训辅导资料。事实上,如果不用本书作为基础,对我们团队进行培训是不可能完成的。现在它成为我们所有开发人员的必读书籍,并且帮助我们准时地、不超出预算地交付了一个全新的、非常复杂的产品。感谢本书在阐述开发Eclipse插件过程中所做的伟大工作。”
  ―Bruce Gruenbaum
  “本书无疑是所有我的书籍中最有用的书之一。如果你准备开始开发Eclipse插件,本书是必备书籍之一。它将节省你大量的时间和精力。在本书中,你将会发现很多有用的建议,尤其是那些有益于提升专业技巧和提高插件的完整性的。本书特色鲜明、结构良好、考虑周到、写作清晰,并且不包含任何多余内容。用于描述不同组件和清单的章节关系的图表是很好的,为理解各部分如何协同工作提供了帮助。本书还包含了操作、视图和编辑器等相关内容。我相信每个读者都能从作者的经验中受益。当然我就是受益者之一。”
  ―Tony Saveski
  “这本有重要影响的书的作者拥有数十年的经验。这些经验是有关于目前已知的最具生产效率和最健壮的软件工程的。他们的经验现在已经成功地应用于使用Eclipse进行更有效的Java开发。这是一本每一个专业软件工程开发人员都应该拥有的书。”
  ―Ed Klimas
  “仅仅是想让你们知道这是一本优秀的书。同时也感谢作者为创作这样一本易懂而又专业的书所做的努力。”
  ―Brooke Hedrick
  “为Eclipse开发良好插件的关键是懂得在何处,以及怎样扩展该IDE。这就是本书所要告诉你的。它是专业插件开发者的必备,尤其是那些开发商业应用的人。我不能没有它。”
  ―Brian Wilkerson
770)this.width=770;' />
系列图书推荐 ¥49.00¥34.30
同类热销商品¥30.00¥19.80
订单处理配送
北京奥维博世图书发行有限公司 china-pub,All Rights Reserved

我要回帖

更多关于 eclipse svn插件安装 的文章

 

随机推荐