Eclipse

Eclipse是一款跨平台开源集成开发环境（IDE）。最初主要用来Java语言开发，目前亦有人通过插件使其作为C++、Python、PHP等其他语言的开发工具。

Eclipse的本身只是一个框架平台，但是众多插件的支持，使得Eclipse拥有較佳的灵活性，所以许多软件开发商以Eclipse为框架开发自己的IDE。

 历史 
Eclipse最初是由IBM公司开发的替代商业软件的下一代IDE开发环境，2001年11月贡献给开源社区，现在它由非营利软件供应商联盟Eclipse基金会（Eclipse Foundation）管理。2003年，Eclipse 3.0选择OSGi服务平台规范为运行时架构。2007年6月，稳定版3.3发布；2008年6月发布代号为Ganymede的3.4版；2009年6月发布代号为Galileo的3.5版；2010年6月发布代号为Helios的3.6版；2011年6月發布代號為Indigo的3.7版；2012年6月發布代號為Juno的4.2版；2013年6月發布代號為Kepler的4.3版；2014年6月發布代號為Luna的4.4版；2015年6月發布代號為Mars的4.5版。 最新版为2020年12月的4.18版。

 架构 
Eclipse的基础是富客户机平台（即RCP）。RCP包括下列组件：

核心平台（启动Eclipse，运行插件）
 OSGi（标准集束框架）
 SWT（可移植构件工具包）
 （文件缓冲，文本处理，文本编辑器）
 Eclipse工作台（即Workbench，包含视图（views）、编辑器（editors）、视角（perspectives）、和向导（wizards））

Eclipse采用的技术是IBM公司开发的（SWT），这是一种基于Java的窗口组件，类似Java本身提供的AWT和Swing窗口组件；不过IBM声称SWT比其他Java窗口组件更有效率。Eclipse的用户界面还使用了GUI中间层JFace，从而简化了基于SWT的应用程序的构建。

 插件 
Eclipse的插件机制是轻型软件组件化架构。在富客户机平台上，Eclipse使用插件来提供所有的附加功能，例如支持Java以外的其他语言。已有的分离的插件已经能够支持C/C++（CDT）、PHP、Perl、Ruby，Python、telnet和数据库开发。插件架构能够支持将任意的扩展加入到现有环境中，例如配置管理，而决不仅仅限于支持各种编程语言。

Eclipse的设计思想是：一切皆插件。Eclipse核心很小，其它所有功能都以插件的形式附加于Eclipse核心之上。Eclipse基本内核包括：图形API（SWT/Jface），Java开发环境插件（JDT），插件开发环境（PDE）等。

框架的本质与极高的扩展性，使得厂商可以利用Eclipse作为平台开发各类IDE。甚至一些应用软件也是基于Eclipse的，如Oracle JDK自带的监控程序、Android SDK附带的设备监视工具DDMS。

 Eclipse计划 
Eclipse由各种不同的计划组成。以下列出了部分计划，更完整全面的列表在此（英文）。
 Eclipse计划：本身包括Eclipse平台，Eclipse富客户端平台（RCP）和Java开发工具（JDT）。
 Eclipse测试和性能工具平台（TPTP）：提供一个允许软件开发者构建诸如测试调试、概况分析、基准评测等测试和性能工具的平台。
 Eclipse Web工具平台计划（WTP）：用Java企业版Web应用程序开发工具来扩展Eclipse平台。它由以下部分组成：HTML、JavaScript、CSS、JSP、SQL、XML、DTD、XSD和WSDL的源代码编辑器；XSD和WSDL的图形界面编辑器；Java企业版的“项目性质”（project nature）、建构器（builder）和模型（model），与一个Java企业版的导航（navigator）；一个Web服务（Web service）向导和浏览器，还有一个WS-I测试工具；最后是数据库访问查询的工具与模型。
 Eclipse商业智能和报表工具计划（BIRT）：提供Web应用程序（特别是基于Java企业版的）的报表开发工具。
 Eclipse可视化界面编辑器计划（VEP）：一个Eclipse下创建图形用户界面代码生成器的框架。
 Eclipse建模框架（EMF）：依据使用XMI描述的建模规格，生成结构化数据模型的工具和其他应用程序的代码。
 图形化编辑器框架（GEF）：能让开发者采用一个现成的应用程序模型来轻松地创建富图形化编辑器。
 UML2：Eclipse平台下的一个UML 2.0元模型的实现，用以支持建模工具的开发。
 AspectJ：一种针对Java的面向侧面语言扩展。
 Eclipse通讯框架（ECF）：专注于在Eclipse平台上创建通讯应用程序的工作。
 Eclipse数据工具平台计划（DTP）
 Eclipse设备驱动软件开发计划（DSDP）
 C/C++开发工具计划（CDT）：努力为Eclipse平台提供一个全功能C和C++的集成开发环境（IDE），它使用GCC作为编译器。
 PHP开发工具计划（PDT）：努力为Eclipse平台提供一个全功能PHP的集成开发环境（IDE）。
 Eclipse平台COBOL集成开发环境子计划（COBOL）：将构建一个Eclipse平台上的全功能COBOL集成开发环境。
 并行工具平台（PTP）：将开发一个对并行计算机架构下的一组工具进行集成的平行工具平台，而且这个平台是可移植的，可伸缩的并基于标准的。
 嵌入式富客户端平台（eRCP）：计划将Eclipse富客户端平台扩展到嵌入式设备上。这个平台主要是一个富客户端平台（RCP）组件子集的集合。它能让桌面环境下的应用程序模型能够大致同样地能运用在嵌入式设备上。

 版本 
在Eclipse基金會及其項目和貢獻者社區，對我們經常被稱為協調調度版本同時發布，協同發布或發布列車的Eclipse。此頁面提供當前和前幾年現有同時發布的索引。

自2018-09發布以來，節奏從一個年度主要版本加上3個更新/服務版本變為帶有滾動版本的13週週期。
+發布名稱平台版本發布鏈接2019-03（當前版本）4.112019年3月2018-124.102018年12月19日維基 / 計劃2018-094.92018年9月19日維基 / 計劃

從2006年起，Eclipse基金會每年都會安排同步發佈（simultaneous release）。

Eclipse基金會及其社區項目和貢獻者每年都會按照協調的時間表發布一個版本。 此版本通常被稱為Eclipse的同時發布，

協調發布，發布培訓或年度版本。 此頁面提供了當前和以前年份的現有同步發布的索引。 

每個版本通常在6月份發布，並在9月份（* .1），12月份（* .2）和3月份（* .3）發布後續更新版本。

在Neon(4.6)之前，每個發行版在9月份（SR1）和次年2月份（SR2）發布了兩個服務版本。
 代號 平台版本 項目 主要版本發行日期 SR1發行日期 SR2發行日期  --   -- 2004年6月21日  --  --  --   -- 2005年6月28日  --  -- Callisto Callisto projects 2006年6月30日  --  -- Europa Europa projects 2007年6月29日 2007年9月28日 2008年2月29日 Ganymede Ganymede projects 2008年6月25日 2008年9月24日	 2009年2月25日 Galileo Galileo projects 2009年6月24日 2009年9月25日 2010年2月26日 Helios Helios projects 2010年6月23日 2010年9月24日 2011年2月25日 Indigo Indigo projects 2011年6月22日 2011年9月23日 2012年2月24日 Juno Juno projects 2012年6月27日 2012年9月28日 2013年2月22日 Kepler Kepler projects 2013年6月26日 2013年9月28日 2014年2月28日 Luna Luna projects 2014年6月25日 2014年9月23日 2015年2月25日 Mars Mars projects 2015年6月24日 2015年9月22日 2016年2月24日代號平台版本     項目主要版本發行日期9月份 (*.1)12月份 (*.2)3月份 (*.3) Neon Neon projects 2016年6月22日2016年9月28日2016年12月21日2017年3月23日 Oxygen Oxygen projects 2017年6月28日2017年9月27日2017年12月20日2018年3月21日 Photon Photon projects 2018年6月27日2018年9月2018年12月2019年3月

 參考資料 

 参閱 

 NetBeans 另一著名的开源多语言开发平台、IDE软件
 IntelliJ IDEA 另一著名的商业Java IDE
 WSAD IBM的商业Java IDE（WebSphare Application Developer）
 Visual J++ Microsoft的商业Java IDE
 JBuilder Borland的商业Java IDE
 g-Eclipse

 外部链接 

 官方网站 
 有关Eclipse 2.0 API的网站
 有关Eclipse 2.1 API的网站
 有关Eclipse 3.0 API的网站
 Acceleo, Eclipse的代码生成程序
 Eclipse教學

Category:集成开发环境
Category:开放源代码
Category:自由整合開發環境
Category:Linux集成开发环境