Eclipse

Eclipse是一款跨平臺開源集成開發環境（IDE）。最初主要用來Java語言開發，目前亦有人通過插件使其作為C++、Python、PHP等其他語言的開發工具。
Eclipse的本身只是一個框架平臺，但是眾多插件的支持，使得Eclipse擁有較佳的靈活性，所以許多軟件開發商以Eclipse為框架開發自己的IDE。

**歷史**
Eclipse最初是由IBM公司開發的替代商業軟件Visual Age for Java的下一代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（可移植構件工具包）- JFace（文件緩衝，文本處理，文本編輯器）- 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由各種不同的計劃組成。以下列出了部分計劃，更完整全面的列表//www.eclipse.org/projects/ 在此（英文）。- Eclipse計劃：本身包括Eclipse平臺，Eclipse富客戶端平臺（//www.eclipse.org/rcp/ RCP）和Java開發工具（ JDTdate=20060221161604 ）。- Eclipse測試和性能工具平臺（//www.eclipse.org/tptp/index.html TPTP）：提供一個允許軟件開發者構建諸如測試調試、概況分析、基準評測等測試和性能工具的平臺。- Eclipse Web工具平臺計劃（//www.eclipse.org/webtools/index.html 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商業智能和報表工具計劃（//www.eclipse.org/birt/ BIRT）：提供Web應用程序（特別是基於Java企業版的）的報表開發工具。- Eclipse可視化界面編輯器計劃（//www.eclipse.org/vep/ VEP）：一個Eclipse下創建圖形用戶界面代碼生成器的框架。- Eclipse建模框架（//www.eclipse.org/emf/ EMF）：依據使用XMI描述的建模規格，生成結構化數據模型的工具和其他應用程序的代碼。- 圖形化編輯器框架（//www.eclipse.org/gef/ GEF）：能讓開發者採用一個現成的應用程序模型來輕鬆地創建富圖形化編輯器。- UML2：Eclipse平臺下的一個UML 2.0元模型的實現，用以支持建模工具的開發。- AspectJ：一種針對Java的面向側面語言擴展。- Eclipse通訊框架（//www.eclipse.org/ecf/ ECF）：專注於在Eclipse平臺上創建通訊應用程序的工作。- Eclipse數據工具平臺計劃（//www.eclipse.org/datatools/ DTP）- Eclipse設備驅動軟件開發計劃（//www.eclipse.org/dsdp/ DSDP）- C/C++開發工具計劃（//www.eclipse.org/cdt CDT）：努力為Eclipse平臺提供一個全功能C和C++的集成開發環境（IDE），它使用GCC作為編譯器。- PHP開發工具計劃（//www.eclipse.org/pdt PDT）：努力為Eclipse平臺提供一個全功能PHP的集成開發環境（IDE）。- Eclipse平臺COBOL集成開發環境子計劃（ COBOLdate=20060303162857 ）：將構建一個Eclipse平臺上的全功能COBOL集成開發環境。- 並行工具平臺（//eclipse.org/ptp PTP）：將開發一個對並行計算機架構下的一組工具進行集成的平行工具平臺，而且這個平臺是可移植的，可伸縮的並基於標準的。- 嵌入式富客戶端平臺（//www.eclipse.org/ercp eRCP）：計劃將Eclipse富客戶端平臺擴展到嵌入式設備上。這個平臺主要是一個富客戶端平臺（RCP）組件子集的集合。它能讓桌面環境下的應用程序模型能夠大致同樣地能運用在嵌入式設備上。

**版本**
在Eclipse基金會及其項目和貢獻者社區，對我們經常被稱為協調調度版本同時發布，協同發布或發佈列車的Eclipse。此頁面提供當前和前幾年現有同時發布的索引。
自2018-09發布以來，節奏從一個年度主要版本加上3個更新/服務版本變為帶有滾動版本的13週週期。
從2006年起，Eclipse基金會每年都會安排//wiki.eclipse.org/Simultaneous_Release 同步發佈（simultaneous release）。
Eclipse基金會及其社區項目和貢獻者每年都會按照協調的時間表發布一個版本。 此版本通常被稱為Eclipse的同時發布，
協調發布，發布培訓或年度版本。 此頁面提供了當前和以前年份的現有同步發布的索引。 
每個版本通常在6月份發布，並在9月份（* .1），12月份（* .2）和3月份（* .3）發布後續更新版本。
在Neon(4.6)之前，每個發行版在9月份（SR1）和次年2月份（SR2）發布了兩個服務版本。
show=11101

**參考資料**

**參閱**
 NetBeans 另一著名的開源多語言開發平臺、IDE軟件- IntelliJ IDEA 另一著名的商業Java IDE- WSAD IBM的商業Java IDE（WebSphare Application Developer）- Visual J++ Microsoft的商業Java IDE- JBuilder Borland的商業Java IDE- g-Eclipse

**外部鏈接**
 //www.eclipse.org/ Eclipse的官方網站 上面提供相關的郵件列表、新聞組以及Eclipse軟件及插件下載。-  有關Eclipse 2.0 API的網站-  有關Eclipse 2.1 API的網站date=20070514220650 -  有關Eclipse 3.0 API的網站-  Acceleo, Eclipse的代碼生成程序date=20141129051854 -  Eclipse教學date=20191116002132