请输入您要查询的百科知识:

 

词条 Eclipse
释义

EclipseEclipse是一种可扩展的开放源代码IDE。2001年11月,IBM公司捐出价值4,000万美元的源代码组建了Eclipse联盟,并由该联盟负责这种工具的后续开发。集成开发环境(IDE)经常将其应用范围限定在“开发、构建和调试”的周期之中。为了帮助集成开发环境(IDE)克服目前的局限性,业界厂商合作创建了Eclipse平台。Eclipse允许在同一IDE中集成来自不同供应商的工具,并实现了工具之间的互操作性,从而显著改变了项目工作流程,使开发者可以专注在实际的嵌入式目标上。

§ 基本简介

EclipseEclipse框架的这种灵活性来源于其扩展点。它们是在XML中定义的已知接口,并充当插件的耦合点。扩展点的范围包括从用在常规表述过滤器中的简单字符串,到一个Java类的描述。任何Eclipse插件定义的扩展点都能够被其它插件使用,反之,任何Eclipse插件也可以遵从其它插件定义的扩展点。除了解由扩展点定义的接口外,插件不知道它们通过扩展点提供的服务将如何被使用。

利用Eclipse,可以将高级设计(也许是采用UML)与低级开发工具(如应用调试器等)结合在一起。如果这些互相补充的独立工具采用Eclipse扩展点彼此连接,那么当用调试器逐一检查应用时,UML对话框可以突出显示正在关注的器件。事实上,由于Eclipse并不了解开发语言,所以无论Java语言调试器、C/C++调试器还是汇编调试器都是有效的,并可以在相同的框架内同时瞄准不同的进程或节点。

Eclipse的最大特点是它能接受由Java开发者自己编写的开放源代码插件,这类似于微软公司的Visual Studio和Sun 微系统公司的NetBeans平台。Eclipse为工具开发商提供了更好的灵活性,使他们能更好地控制自己的软件技术。Eclipse 联盟已经宣布将在2004年中期发布其3.0版软件。这是一款非常受欢迎的java开发工具,这国内的用户越来越多,实际上实用它java开发人员是最多的。缺点就是较复杂,对初学者来说,理解起来比较困难。

Eclipse最初由OTI和IBM两家公司的IDE产品开发组创建,起始于1999年4月。IBM提供了最初的Eclipse代码基础,包括Platform、JDT和PDE。目前由IBM牵头,围绕着Eclipse项目已经发展成为了一个庞大的Eclipse联盟,有150多家软件公司参与到Eclipse项目中,其中包括Borland、Rational Software、Red Hat及Sybase等。Eclipse是一个开发源码项目,它其实是Visual Age for Java的替代品,其界面跟先前的Visual Age for Java差不多,但由于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。近期还有包括Oracle在内的许多大公司也纷纷加入了该项目,并宣称Eclipse将来能成为可进行任何语言开发的IDE集大成者,使用者只需下载各种语言的插件即可。

§ 背景资料

EclipseEclipse这样功能完整且成熟的开发环境,是由蓝色巨人IBM所释出。IBM花了4千万美金来开发这个IDE(Integrated Development Environment)。第一版1.0在2001年11月释出,随后逐渐受到欢迎。 Eclipse已经成为开放原始码计划(Open Source Project),大部分的开发扔然掌握在IBM手中,但是有一部份由eclipse.org的软件联盟主导。

Eclipse项目由Project Management Committee(PMC)所管理,它综观项目全局,Eclipse项目分成3个子项目:

平台-Platform

开发工具箱-Java Development Toolkit(JDT)

外挂开发环境-Plug-in Development Environment(PDE)

这些子项目又细分成更多子项目。例如Platform子项目包含数各组件,如Compare、Help与Search。JDT子项目包括三各组件:User Interface(UI)、核心(Core)及除错(Debug)。PDE子项目包含两各组件:UI与Core。

§ 现状发展

Eclipse2001 年11 月,IBM 向开源社区捐献了Eclipse 代码,自此 Eclipse 在研发者社区得到飞速发展。2006 年 1月19日,Eclipse 国际高峰论坛也首次登陆中国,在清华大学信息科学技术大楼举行。在这次Eclipse 大会上编辑团队和IBM 的Eclipse 策略经理 John Kellerman 进行了座谈,聆听了他对Eclipse 历史的追溯、对 Eclipse 架构的分析、对 Eclipse 现状分析、对未来发展的展望。

John Kellerman,IBM 软件部 Rational 产品总经理,和 1984 年加入 IBM, 一直从事应用研发工作。2000 年初,John 开始加入了 Eclipse 项目,现在任职 IBM Eclipse 策略部总经理。他现在的主要工作是在 Eclipse 基金会、Eclipse 社区中代表 IBM 的利益,和 Eclipse 成员公司合作。

加入 Eclipse 项目之前,是 IBM Visual Age for SmallTalk 的产品经理。Eclipse 起源的一个很重要的原因是,当时IBM 面临着一些挑战需要去解决,即 IBM 研发工具 Visual Age for Java 和 WebSphere Studio 很难集成到一起,而且底层的技术比较脆弱,因此进一步发展很艰难,无法满足业界应用研发的需求。

1998 年,开始了下一代研发工具技术探索之路,成立了一个项目研发小组,经过两年的发展,2000年决定给新一代研发工具项目命名为 Eclipse,Eclipse 叫法当时只是内部使用的名称。这时候的商业目标就是希望 Eclipse 项目能够吸引研发人员,能发展起一个强大而又充满活力的商业合作伙伴(单独软件供给商)社区。同时意识到需要用他来对抗 Microsoft Visual Studio 的发展,因此从商业目标考虑,通过开源的方式最有机会达到目的。此外,IBM 推出了 Eclipse 试用计划,允许 IBM 以外的研发人员使用 Eclipse。决策很正确,Eclipse 从此在研发社区广为流传。Eclipse 也就成为这个项目的正式名称。

§ 开源Eclipse

Eclipse开源 Eclipse 不能只是简单地贡献出源码,创建一个开源项目然后放在开源许可证下;需要建立起多家公司的合作关系,否则就不足信服,不是真正的开源项目,而只是 IBM 的一个项目。因此在 2000 年到 2001 年之间,主要工作就是去拜访一些公司,和他们谈论 Eclipse,邀请他们加入 Eclipse 项目。 您能够想象,这是很有趣的谈话,最终,与8家公司达成了一致,其中包括一些 IBM 的竞争对手 WebGain、Borland,更有一些盟友如 Rational(Rational 当时还没有被 IBM 收购)。

2001 年12 月,IBM 向世界宣布了两件事,第一件是创建开源项目,既 IBM 捐赠价值 4 千万美元的源码给开源社区;另外一件事是成立 Eclipse 协会(Eclipse Consortium),这个协会由一些成员公司组成,主要任务是支持并促进 Eclipse 开源项目。

Eclipse 本身、会员、插件(plug-in)和 Eclipse 社区飞速成长。2003 年意识到这种会员模式很难进一步扩展,有些事务操作起来很困难,比如无法筹集赠款、无法成立合法理事会,这主要是因为 Eclipse 协会不是个法律上的实体;此外,尽管 Eclipse 成功有目共睹,但仍然有些业界成员没有加入,他们认为是 Eclipse 的真正领导者是 IBM。因此认识到创建一个单独于 IBM 的 Eclipse 将会对 Eclipse 的发展很有利, 于是 IBM 和其他成员公司合作起草了管理条例,准备成立 Eclipse 基金会(Eclipse Foundation)。2004 年初,Eclipse 基金会正式成立。

对于 Eclipse 插件架构,一个很好的比喻是 Web 浏览器,他也有插件,Eclipse 插件和浏览器相似,都是要解决扩展性问题。对于一个 Web 浏览器,假如您想既能浏览多媒体动画,又想浏览 PDF 文档,那么您就需要两个不同的插件,才能确保两种内容都能在 Web 浏览器中显示。 Eclipse 也相同,通过他的插件模式能够安装不同的插件来进行 HTML 的编辑、数据库的设计、Java 研发、C++ 研发等等,任何这些研发工作完全在一个 Eclipse 安装平台上进行。而且 Eclipse 模型所能做的远超过了这些,理解 Eclipse 插件的关键是首先要理解 Eclipse 扩展点,正是这个扩展点帮您在 Eclipse 中添加新功能。例如,假如希望在菜单中添加一项,就是通过 Eclipse 扩展点实现的。

Eclipse 插件实现了一个扩展点,就创建了一个扩展,此外,扩展还能够创建自己的扩展点。这种插件模式的扩展和扩展点是递归的,而且被证实是很灵活的。记得着手对 Eclipse 研发进行区域性调查时,最初的决定之一是:"We will eat our own dog food"(编者注:谚语,指一个公司在日常运行中使用自己的产品),即 Eclipse 团队要使用 Eclipse 进行 Eclipse 的研发。事实上,Eclipse 本身是个核心的运行时绑定了一些在插件之上构建的插件,换句话说,Eclipse 本身就是一系列的插件。这样随着使用 Eclipse 构建 Eclipse 的经验累积,这种插件模式就变得日臻成熟。

Eclipse 项目有 100 多个,IBM 参和了其中超过一半的项目,有 3 个主管在主持 Eclipse 相关的工作。2005 年还赞助了一些 Eclipse 创新基金和 Eclipse 奖学金。IBM 承诺在未来的几年内会一如既往地参和 Eclipse 研究,将会看到 IBM 研发出新项目,而在某些 Eclipse 项目上减少参和,这要看 IBM 的商业目标。提议一个项目叫 Beacon, 是关于 Eclipse 流程框架的。将捐献一些 Rational Unified Process (RUP) 技术,基本上这个提议是要提供流程方面的内容。IBM 现在和一家叫做 Zend 的公司合作,希望在 Eclipse 上研发出用于 PHP 的研发工具。从商业方面看 IBM, 您会发现 Eclipse 是 Rational 软件研发平台的基础。此外由于 Eclipse 的插件模式、扩展性、集成性,为Rational, WebSphere,Lotus 和 Tivoli 构建了统一的平台。

目标是创建集成统一平台,有基于 Eclipse 构建的 DB2, Rational, WebSphere 等工具,这样客户就能够一起使用这些工具,有统一的界面风格,使用起来很方便。对 IBM 自身来说,各个研发部门就能够关注于软件的核心性能研发,而不必要浪费资源做一些重新实现的工作,从而 DB2 研发部门就专注于数据库研发、WebSphere 专注应用服务器的研发、Rational 专注于建模、源代码管理,至于其他方面的辅助研发对于 Eclipse 来说是一起的。

对于 IBM在 Eclipse 技术研发方面和上百家公司合作,因为 IBM 看到了 Eclipse 作为通用的、开放的、标准的技术基础,其价值日益成长。当然,这种基础技术是不会带来创收的,没有人能够使用 Eclipse 技术来赚钱,但这并不重要,就像 Borland,Sybase 等公司都在花费钱做同样的构建工作,在这方面更有合作,但是还专注于将核心功能组件构建在 Eclipse 平台上,例如,IBM 的 Rational Application Developer, 他是使用 Eclipse 作为基础,然后在这基础上添加了建模插件、Web 研发插件,更有其他更有价值的插件,这些插件是收费的。这就是使用 Eclipse 进行商业创收的模式之一。

人们还能够直接为 Eclipse 构建插件,然后出售这些插件来赚钱,因为插件能够使用商业许可证发行。事实上建立 Eclipse 公共许可证,就是为了让 Eclipse 能很好的被商业采用,从而能够用他来赚钱,Eclipse 的任何成员公司基本都是商业软件提供商。现在全球有上百万研发人员在使用 Eclipse,因此中国研发人员完万能够构建有价值的插件和工具,然后进行销售。同时 IBM 有一个合作伙伴计划,帮助合作伙伴宣传在 IBM 基于 Eclipse 的产品之上构建的应用。

§ 早期发展

Eclipse在Eclipse 的早期,有些用户试图除了将 Eclipse用于研发工具基础平台外,还用作更普遍的商业应用基础。他们认为一个 IDE 就是个特别的富客户端应用。这就是开放源码研发的魅力所在,当这些用户试着用 Eclipse 作为通用富客户端时,他们就把这些想法建议反馈给 Eclipse 研发小组。就这样 Eclipse 经过了 2.0 到 2.1 的发展,不断收到来自社区的建议和反馈,终于到了一个通用化的阶段。在3.0 版发行时,觉得时机成熟,于是正式声明将 Eclipse 作为通用的富客户端和 IDE。

其实最早的反馈是来自Lotus 研发小组,他们在 Eclipse 3.0 之前就意识到能够使用 Eclipse 来提供他们 Workplace 客户端的富客户端版本。从 Eclipse 3.0 到 3.1 再到 3.2, 看到富客户端平台应用的快速增长,同时也收到越来越多反馈完善提高。

RCP 应用之一是在EclipseCon 2005 上的一个演示,演示的是美国国家航空航天管理局(NASA)的一个项目,当时 NASA 在加利福尼亚州有个实验室叫 Jet Propulsion Laboratory (JPL),负责火星探测计划,他们的管理用户界面就是个 Eclipse RCP 应用,通过这个应用,加利福尼亚州的工作人员就能够控制在火星上运行的火星车。在演示过程中,有人问为什么使用 Eclipse,回答是使用 Eclipse 这门技术,他们不用担心,而且还节省了不少纳税人的钱,因为他们只需要集中资源研发控制火星车的应用就能够了。

Eclipse 提供了不同的集成方法,能够是很轻量级的集成,即只是简单的调用和返回。Eclipse能够处理 ActiveX 控件,这样 Word, Excel 就能够在 Eclipse 里打开,这是另一种集成模式。有些供给商选择把他们的工具封装在 Java 层,即保留 C/C++ 工具,封装在 Java 里和 Eclipse 进行通信。假如软件供给商希望将工具构建成 Eclipse 插件,那么通常建议在 Eclipse 中用 Java 重新实现,因为几乎任何的微软工具都是 C/C++ 工具。因此工具的迁移能够分三步走:轻量级集成、重量级集成和重新实现。

假如要迁移程式,Eclipse 提供了一些设施。但难易程度取决于程式是用什么工具研发的,因为最重要的部分是(版本控制系统的)代码库本身,假如代码库同时支持 Visual Studio 和 Eclipse,那就容易的多。此外有一些公司提供了迁移系统,在 Eclipse 网站的社区部分中能够查看这些公司列表。

Eclipse 是完全开放的,任何人都能够参和,参和的最简单方法是关注他的新闻组,选择一个感兴趣的技术领域,然后下载代码,自己做些实验,并在新闻组上回答一些问题,这样随着技术的提高,就能够向 Bugzilla 提交 bug 和修复包,或去修复其他 bug。假如得到项目工作组的认可,便能够承担项目的一些义务,成为项目研发组的真正成员。此外还能够写一些文章发送到 Eclipse 组织,参加本地的 Eclipse 用户组等等方式。

§ 版本简介

Eclipse可以从eclipse.org网站(http://www.eclipse.org/downloads)下载,可以发现『最新』与『最好』的版本,这两种版本通常不一样,基本上有四种版本-或建置(build)可供下载:

释出版(Release builds)

由Eclipse开发团队所宣称的主要稳定版本。Release builds经过完整测试,并具有一致性、定义清楚的功能。它的定位就跟上市的商业软件一样。

稳定版(Stable builds)

比Release build新一级的版本,经由Eclipse开发团队测试,并认定它相当稳定。新功能通常会在此过渡版本出现。它的定位就跟商业软件的beta版一样。

整合版(Integration builds)

此版本的各个独立的组件已经过Eclipse开发团队认定具稳定度,但不保证兜在一起没问题。若兜在一起够稳定,它就有可能晋级成Stable build。

当日最新版(Nightly builds)

此版本显然是从最新的原始码产生出来的。可想而知,此版本当然不保证它跑起来没问题,搞不好还有严重的bug。

§ 语言平台

Eclipse多数人认为Eclipse是Java IDE,当下载Eclipse之后,除了有Java IDE(就是JDT),还有PDE。然而Eclipse是万用工具平台。JDT实际上是Eclipse的添加品,也就是外挂程序。Eclipse本身实际上是指Eclipse平台(Eclipse Platform),除了下载时能取得Java工具集以外,还提供各种工具的支持,所以平台本身只是相当小的ㄧ组软件。

如果想开发Java程序,用的是Eclipse随附的JDT外挂程序。如果想开发其它语言的程序,就需要拿到其它外挂程序,诸如CDT(C Development Toolkit)就可以开发C/C++程序。

Eclipse跨计算机语言,也跨人类的语言。相同的外挂机制可用来增加对不同语言的支持,这里使用一种特殊的外挂,叫做外挂程序片断(plug-in fragment)。IBM以捐出一个语言套件,支持中文(繁体与简体)、法文、德文、意大利文、日文、韩文、葡萄牙文(巴西)与西班牙文。

Eclipse以Java写成,应该可以在任何的平台执行。但严格来说Eclipse不是跨平台的,因为它使用作业平台的原生图形来建置。因此要等SWT(Standard Widget Toolkit)移植到该平台,Eclipse才能在那个平台执行。但就现实而言到不是什么大问题,因为SWT已经被移植到数个常见平台上了,包括Windows、Linux/Motif、Linux/GTK2、Solaris、QNX、AIX、HP-UX与Mac OS X。

§ 相关词条

MYSQLIPICPALEXAPRSEO

CGIFSOFTPPOP3WCMECM

FLASHWEBGPUCPADIVCSS

HTMLBBS.NETXMLAJAXMD5

§ 参考资料

1、http://www.eclipseworld.org

2、http://www.51myit.com/tag-Eclipse.html

3、http://dev.yesky.com/eclipse/

随便看

 

百科全书收录594082条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2024/12/19 6:05:37