通过使用 Eclipse 插件开发环境(Eclipse Plug-in Development Environment,PDE),WebSphere Studio 能让您快速开发功能强大的插 件。然而,在您开始新的插件开发项目时,摆在您面前的功能和选择会使您无从选择。本文提供了在插件开发过程中您将面对的这些问题的实 践概要,无论您选择使用的是 WebSphere Studio 或是 vanilla Eclipse。
引言
插件的相关性以及与其有关的在团队中共享项目方式理解起来是比较复杂的。或许 Eclipse 的强大和深度意味着您学习起来会很费劲。本 文将集中讨论在共享插件环境项目开发时会遇到的常见问题,以及如何利用 Eclipse 插件开发环境(PDE)。
本文从 Eclipse 插件框 架和使用源代码储存库进行代码共享的概要开始,然后举例说明在跨团队共享插件代码时会出现的问题,例如在构建路径控制时。还将讨论环 境的建立和如何最大程度的利用 IBM WebSphere Studio Application Developer V5.1.1 and V5.1.2 (以下称为 Application Developer)。这里讨论的内容同样适用于 Application Developer 所基于的 Eclipse 2.1 环境。Eclipse 的早期和晚期版本之间的差别将被 提到 —— 要检查您的产品版本,请选择 Help =>About。
Eclipse 插件体系结构
Application Developer 以开 放源代码 Eclipse 项目为基础。Eclipse 自身由多层 功能(一个功能就是一组插件)构成。Eclipse 的功能强大之处远不止通过插件添加新 的功能。它能按以前从未想到的方式扩展其他人员的贡献。这需要稳健的机制来声明和下载插件。以下将通过范例来讲述有关的细节。范例 shop 应用程序如下所示。这四个插件(日志、数据仓库、业务逻辑和用户接口)都包含一个可安装的功能:
图 1. 范例应用程序的插 件关联结构
在图框之间的箭头表示着插件之间的相关性(在核心 Eclipse 组件之间也同样存在相关性,例如 org.eclipse.ui )。每个插件在 清单( plugin.xml )文件中定义了它与库文件(.JAR 文件)和其他插件的相关性。在此关键的一点是类装载由 Eclipse 控制,并且每个插件拥有自 己的类装载器。插件只能加载自身清单已定义的那些资源。
源代码储存库
Application Developer 提供了共享代码的多种方式;例如 Project Interchange Files。然而,在任何团队开发项 目中,SCM (Software Configuration Management)或者如 CVS 的储存库是必需的,这样所有团队成员就能保持步调一致。Application Developer 对此提供了强大的功能(比如 Team 上下文菜单上的 Synchronize)。参见参考资料部分以获取与此主题有关的文章链接。
全部共享
在储存库中实现共享能带来丰厚的利益。理论上,对于每个插件,您将存储:
源文件(.java)
源数据文件(.classpath、plugin.xml、.project,以及其他类似文件)
单元测试文件 (数据和源代码)
引用的二进制库
构建文件(build.properties 或 build.xml)