赛迪网 > IT技术 今日更新 > 文章
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

如何驾驭 Eclipse 功能部件(三) (1)

发布时间:2003.12.15 10:04     来源:IBM DW    作者:Pat McCarthy 资深软件工程师

《如何驾驭 Eclipse 功能部件(一)》

《如何驾驭 Eclipse 功能部件(二)》

组织功能部件

当您在开发您的工具时,您是否考虑到了需要多少个插件?答案是至少三个:一个是您的模型,也就是非 UI 的核心部分,一个是您的 UI 内容,还有一个或多个是用于提供帮助内容。如果您注意过,您会发现这是 Eclipse 本身的基本模式(jdt.core, jdt.ui, jdt.doc; debug.core, debug.ui;等等)。

这样划分的原因之一是,相对于不用于 UI 的插件来说,用于 UI 的插件在运行期需要不同的 Eclipse 组件的支持(org.eclipse.ui)。

包含其他功能部件

功能部件如果没有被其他功能部件包含,那么在 Eclipse 配置中都会被配置为根功能部件。默认情况下,根功能部件可以由用户在 Install/Update 透视图中禁用或启用,并且可以在 feature.xml 文件中确定一个更新 URL。当包含一个功能部件时,只有在根功能部件中的更新 URL 会被处理,否则只能通过 search-location 定义特别许可才可以。

通过包含功能部件,您可以管理包的组织结构。您可能会有多个功能部件,但只有一个做过标识,其余的或者是用来构成结构,或者是用来管理组件。请记住是根功能部件来定义更新的站点,尽管这个角色可以由功能部件委派给它所包含的功能部件,通过设置 search-location 属性值为 selfboth。

如果您正在构建一个基于 Eclipse 的产品,您可能希望您的一个功能部件来包含 Eclipse 功能部件树。对于标识这个产品来说这并不需要,但是您可以指定另外的更新站点(Eclipse 自己用的是 http://update.eclipse.org/updates),或者根本不指定更新站点,禁用基于 Web 的更新。

可选功能部件的角色

当将一个功能部件包含到另一个功能部件时,您可以选择是否把它设置为可选的。主要原因是创建这样的结构可以让用户根据他自己的需要来禁用您提供的组件的一部分。

当新的功能部件包含有可选功能部件,但那些可选功能部件并不存在时,Eclipse 的配置逻辑不允许添加这个新的功能部件。也就是说,如果适当的先决条件成立,可以使用可选功能部件来创建层结构。不过需要将这些层存贮在不同的目录树下,并且每层使用单独的链接文件。您可以添加到 Eclipse 配置以增加其功能的链接文件的没有数目上的限制。

让 Eclipse (或者任何基于 Eclipse 的产品)以您的方式工作

现在向您讲明了两点:指定的主要功能部件控制整个产品的标识和默认属性,Eclipse 可以在安装配置目录下或者任何一个链接的 Eclipse 目录结构下找到组件。这意味着您可以改变 Eclipse (存在相关风险,不过仅仅意味着您修改时需要小心!)。这些改变可以帮助您管理基于 Eclipse 的安装配置,并使之支持您个人所喜好的属性规则。

使用链接文件来管理 Eclipse 安装配置

您可能会希望能对环境进行更多的管理,而不是毫无选择地将所有的插件(我希望是引用到的功能部件)全部安装到您的 Eclipse 目录树下。如果您需要更新 Eclipse,实际上您并不想要另外再装一个新的 Eclipse 或者在列表中去查找您所想要的功能部件和插件。

下面是一种借助链接文件来组织您的 Eclipse 或者基于 Eclipse 的产品和构件的方法:

·保持 Eclipse 或者基于 Eclipse 的产品是干净的。也就是说,不要把您的任何功能部件或者插件添加到 eclipse\features 和 eclipse\plugins 目录下。

·在已有的 eclipse 目录下创建一个 eclipse\links 目录和一个 eclipse\links-out 目录。如果您用的是基于 Eclipse 的产品,那么可能已经存在 eclipse\links-out 目录。这个目录并不特殊,只是一个用来方便存放不用的链接文件的地方。

·为您要添加到您的配置中的功能部件和插件创建一个或多个 add-ons 的目录。在这些目录下,创建一个 eclipse\features 和一个 eclipse\plugins 目录结构。

·为每一个 add-ons 目录在 eclipse\links-out 目录下创建一个链接文件。将那些您当前要添加到您的活动配置中去的链接文件拷贝到 eclipse\links 目录。

例如,假定您将 Eclipse 解压缩到一个名为 Eclipse-2.1.1 的目录下,然后创建一个名为 CoolTools 的 add-ons 目录,也放在 Eclipse-2.1.1 目录下。在 CoolTools 目录下,您可以有多个目录,每个目录用于一个或一族您要添加到 Eclipse 的工具。您的目录结构可能会如图3所示。

图 3. Eclipse 的链接文件目录结构

EditorList.link 文件要包含下面其中一条(不能是全部)

path=D:/Eclipse-2.1.1/CoolTools/EditorList
path=D:\\Eclipse-2.1.1\\CoolTools\\EditorList

斜杠是一条(/)还是两条(\\)取决于目录结构。确认条目不要以空格结尾,因为这样 Eclipse 会忽略它――我第一次用链接文件时用了好几个小时才弄明白这一点。

如果您使用一个新的工作区来启动 Eclipse,所有 Eclipse 自带的以及通过链接文件找到的功能部件和插件都是可用的。如果您要添加一个链接文件,并使用现有的工作区重新启动 Eclipse,Configuration Changes 对话框就会弹出。如果您删除了一个链接文件(很简单,只是把它移到 \links-out 目录下),配置的变化也会被 Eclipse 注意到,但您能看到的仅仅是 splash-flash。

实际上您不是必须将链接文件移入移出来控制配置,更好的办法是用 Install/Update 透视图来调整配置。当然,可以这样做的前提是您的插件都属于功能部件(看,这是另外一个需要功能部件的理由)。使用 Eclipse 进行配置的调整将以后面讨论。

使用 Install/Update 透视图来修改配置

根功能部件,以及任何定义为可选择的功能部件,都可以在当前配置中禁用。被禁用后,功能部件仍然可以被平台认出;它们只是不再包含在当前的运行期配置中。

前面我们谈及了将 Eclipse Examples 添加到活动配置中。添加后,我们可以使用 Install/Update 透视图来禁用它。如果您正打开一个包含有 Eclipse Examples 的 Eclipse 配置的 Install/Update 透视图,您看到的将如图4 所示。

图 4. 在 Install/Update 透视图中的 Eclipse Examples 功能部件

在 Preview 视图中点击 Disable Now 按钮,您就可以将 Eclipse Examples 功能部件从运行期配置中临时移除。点击后,Eclipse 将提示您重新启动平台来使配置的修改生效。

Eclipse Examples 功能部件在当前配置中将不再可见(或者说不是活动的)。为了能再次看到这个功能部件并启用之,您需要在 Install Configuration 视图中点击 Show Disabled Features 开关按钮(见图5)。

图 5. 在Install/Update 透视图中禁用 Eclipse Examples 功能部件

由于 Eclipse Examples 功能部件是一个根功能部件,所以可以这样做。如果您在 Eclipse SDK 中浏览其他功能部件,您将发现它们在 Preview 视图中没有相应的 Disable Now 按钮,这是因为它们被定义为必需的。

如果您用的是 Eclipse SDK,您应该会有默认配置的平台、JDT 和 PDE。如果您正在做一些插件的开发,但是您不需要 PDE——或者在一些情况下,您不是总需要 JDT——您只要对 Eclipse 做一个小的修改就可以禁用这些功能部件。打开 org.eclipse.platform.sdk.win32 功能部件的 feature.xml 文件,将以下几行修改为包含 optional="true" 属性。

清单 1. 禁用 PDE 和 JDT

<includes id="org.eclipse.platform.win32"
 version="2.1.1" match="equivalent"/> 
<includes id="org.eclipse.jdt" version="2.1.1" 
match="equivalent" optional="true"/> 
<includes id="org.eclipse.pde" version="2.1.0" 
match="equivalent" optional="true"/>
<includes id="org.eclipse.platform.win32.source" 
version="2.1.1" match="equivalent" 
   optional="true"/>
<includes id="org.eclipse.jdt.source" version="2.1.1" 
match="equivalent" optional="true"/>

现在您可以在 Install Configuration 视图中选择这些功能部件并禁用它们。如果所有前面提到那些定义为可选择的功能部件都被禁用,平台依然可以运行。并且,您随时可以重新启用它们。图6 是 Install Configuration 视图中显示的被禁用的功能部件。

图 6. 禁用 Eclipse 多个的功能部件

这些禁用/启用的设置都是仅对于当前工作区有效。您可以有另外的活动工作区,其中包含有部分或全部在当前工作区中被禁用的功能部件。这个简单的例子说明了使用功能部件的优势(它们可以被禁用)和使用链接文件来将所有可能的功能部件添加到您的配置的意义所在。在一个给定的工作区中将您所不需要的功能部件禁用,这样就可以优化当前配置。

1 2 下一页>>


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· 如何驾驭 Eclipse 功能部件(二) (12-12) · 如何驾驭 Eclipse 功能部件(一) (12-12)
· 为您的Linux应用开发加油提速(四) (12-10) · 如何用Linux打造因特网网关? (12-10)
· Linux遭遇安全信任危机 形象毁于安全漏洞 (12-10) · 分析SpenceMurray的开发技巧 (12-08)
· Linux 2.6内核正紧张测试中 有望当月发布 (12-08) · Sun退出IBM开源竞标 自行主攻NetBeans项目 (12-05)
· 戴尔在华扩展业务 力推红旗版Linux服务器 (12-05) · Gartner:Linux“敌人”是Unix 而不是微软 (12-05)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
[政务][电信][金融][农业][制造业][中小企业]
[CIO][ERP][协同][IT管理][中间件][电子商务]
[政策][地方][专家][评估][辞典][博客][社区]
· 专题:一路畅通构想曲——让出行不再遭遇堵车
· CIO工作亲历:企业ERP选型不能忽视"选人关"
· 综述:信息化建设给中国监狱带来的各种变化
· 金融业风险管理和法规遵从有五点需考虑的因素
· 保险业CIO关注:该如何建立统一高效的CRM体系
· 调查显示:多数CIO对IT规划仍存在困惑和误解
  博客·论坛 ·曾剑秋·项立刚·Java学习·网管