簡介:有著 39 個 Eclipse 項目和 3300 萬行代碼的 Eclipse Helios 同步發行版展現出 Eclipse 體系中正在不斷湧現的多樣性和創新。浏覽幾個項目及其源代碼,了解更多信息。
Helios 是有著 39 個 Eclipse 項目的同步版本。據統計,Helios 版本包含 3300 萬行代碼,這由來自 44 家公司的 5000 名 Eclipse.org 成員共同開發完成。一般來說,關於 Helios 和 Eclipse 同步版本有一點一定要了解,同步版本並不表示這些項目是統一的。每個項目都是 Eclipse.org 中的一個獨立的開源項目,由自己的項目領導運作,有自己的成員與開發計劃。同步版本的概念旨在提供一個透明的、可預測的開發周期。
獲取 Helios
有兩種主要方式獲得 Helios 相關項目。第一種 — 推薦的 — 方式是獲取與您相關的軟件包。另一種方式是通過 Eclipse.org 上的 Helios 軟件庫。
圖 1. Helios 軟件包
軟件包
到 Eclipse Helios 軟件包 網站,它包含 12 個根據需求特制的預先綁定的 Helios 版本。
Helios 庫
要使用軟件庫獲得 Helios,需下載 Eclipse V3.6 SDK。然後可以啟動 Eclipse,並通過 Help > Install New Software 訪問軟件更新機制(見圖 2)。如果不可用,則輸入合適的 Helios 庫信息。一旦連接上,您將看到作為 Helios 版本一部分的可用項目列表。就這麼簡單。一旦連接上,就可以輕松選擇在您的 Eclipse 中安裝哪些特性。
圖 2. 浏覽 Helios 庫
Eclipse Marketplace
需要注意的是,Eclipse Marketplace 會作為 Eclipse Helios 版本的一部分啟動。它給 Eclipse 社區提供了一個方便的門戶,可幫助人們找到 Eclipse 相關的開源和商業產品。如果通過軟件包下載 Helios,將可以通過 Help > Marketplace Client 訪問 Eclipse Marketplace 客戶端,它允許您輕松浏覽 marketplace 產品並將它們安裝到 Eclipse(見圖 3)。
圖 3. 浏覽 Eclipse Marketplace
項目
表 1. Helios 項目
項目 簡介 網站 Acceleo OMG MOF Model 到 Text Language (MTL) 標准的編程實現 http://eclipse.org/acceleo Accessibility Tools Framework (ACTF) 為殘障人士構造的應用程序和內容 http://eclipse.org/actf Amalgam Eclipse Modeling 項目改進的打包和可用性 http://eclipse.org/amalgam Atlas Transformation Language (ATL) 模型轉換語言和工具 http://eclipse.org/m2m/atl BPMN Modeler 用於業務分析人員的業務流程圖編輯器 http://eclipse.org/bpmn Buckminster 用於自動構造、編譯、部署流程的一組框架和工具 http://eclipse.org/buckminster Business Intelligence and Reporting Tools (BIRT) 生成報表 http://eclipse.org/birt C/C++ Development Tooling (CDT) C/C++ 編碼 http://eclipse.org/cdt Connected Data Objects (CDO) Model Repository 用於 EMF 模型和元模型的分布式共享模型框架 http://eclipse.org/cdo Dali Java™ 持久化工具 http://eclipse.org/dali Data Tools Platform (DTP) 用於數據庫開發的可擴展的框架和工具 http://eclipse.org/datatools Dynamic Languages Toolkit (DLTK) 用於動態語言開發的可擴展的框架和工具 http://eclipse.org/dltk Eclipse Communication Framework (ECF) 支持分布式工具和應用程序的框架 http://eclipse.org/ecf EclipseLink 為應用程序加入持久化 http://eclipse.org/eclipselink Eclipse Modeling Framework (EMF) 建模框架及代碼生成工具 http://eclipse.org/emf Eclipse Packaging Project (EPP) 創建軟件包和 Eclipse 發行版 http://eclipse.org/epp Ecore Tools 圖形化編輯 EMF 模型 http://eclipse.org/modeling/emft/?project=ecoretools EGit 使用 Eclipse 中的 Git http://eclipse.org/egit EMF Compare 支持比較和合並 EMF 模型 http://eclipse.org/modeling/emft/?project=compare Equinox 實現 OSGi 核心框架規范 http://eclipse.org/equinox Extended Editing Framework (EEF) 改進編輯 EMF 模型的方法 http://eclipse.org/modeling/emft/?project=eef Graphical Editing Framework (GEF) 開發圖形化應用程序 http://eclipse.org/gef Graphical Modeling Framework (GMF) 使用 EMF 開發圖形化編輯器 http://eclipse.org/gmf Java Development Tools (JDT) Java 編碼技術 http://eclipse.org/jdt Java Emitter Templates (JET) 代碼生成庫 http://eclipse.org/modeling/m2t/?project=jet JavaScript Development Tools (JSDT) JavaScript 編碼 http://eclipse.org/webtools/jsdt JavaServer Faces (JSF) Tools 開發 JSF 應用程序 http://eclipse.org/webtools/jsf Java Workflow Tooling (JWT) 工作流和流程工具 http://eclipse.org/jwt Jetty 快速且功能強大的網絡服務器相關技術 http://eclipse.org/jetty JGit Git 的 Java 實現 http://eclipse.org/jgit Linux Tools 將 GNU Autotools、Valgrind、OProfile、SystemTap 集成到 Eclipse http://eclipse.org/linuxtools Marketplace Client (MPC) 安裝來自 Eclipse Marketplace 的特性 http://eclipse.org/mpc MDT UML2 Unified Modeling Language 2 的基於 EMF 的實現 http://eclipse.org/modeling/mdt/?project=uml2 MDT OCL Object Constraint Language 的基於 EMF 的實現 http://eclipse.org/modeling/mdt/?project=ocl MDT XSD XML Schema Definition 的基於 EMF 的實現 http://eclipse.org/modeling/mdt/?project=xsd Memory Analyzer (MAT) 查找內存洩露,分析堆轉儲 http://eclipse.org/mat Mint JDT 和 EMF 集成 http://eclipse.org/modeling/emft/?project=mint Mobile Tools for Java (MTJ) 移動設備 Java 應用程序開發 http://eclipse.org/dsdp/mtj/ Model To Text (M2T) 從模型生成文本工件 http://eclipse.org/m2t Modeling Team Framework EMF 滿足軟件配置管理 http://eclipse.org/modeling/emft Modeling Workflow Engine (MWE) EMF 的模型處理工作流 http://eclipse.org/modeling/emft/?project=mwe MoDisco 模型驅動的可擴展框架 http://eclipse.org/MoDisco Mylyn Eclipse 的任務管理器 http://eclipse.org/mylyn Net4j 可擴展的客戶端 - 服務器系統 http://eclipse.org/modeling/emft/?project=net4j Parallel Tools Platform (PTP) 並行應用程序開發工具 http://eclipse.org/ptp Photran Fortran 編碼 http://eclipse.org/photran PHP Development Tools (PDT) PHP 編碼 http://eclipse.org/pdt Plug-in Development Environment (PDE) 基於 Eclipse 和 OSGi 的應用程序工具 http://eclipse.org/pde Rich Ajax Platform (RAP) 在網絡上運行 RCP 應用程序 http://eclipse.org/rap Service Component Architecture (SCA) Tools SCA 工具 http://eclipse.org/stp/sca Sequoyah 應用程序開發工具和框架 http://eclipse.org/sequoyah SOA Tools 開發基於 SOA 的應用程序 http://www.eclipse.org/stp Subversive 使用 SVN 工作 http://eclipse.org/subversive Swordfish 基於 Equinox 的可擴展 SOA 框架 http://eclipse.org/swordfish Target Management 配置和管理遠程系統 http://eclipse.org/dsdp/tm Teneo 使用 Hibernate 或 EclipseLink 的 EMF 數據庫持久性解決方案 http://eclipse.org/modeling/emft/?project=teneo Test and Performance Tools Platform (TPTP) 配置和測試應用程序的工具 http://eclipse.org/tptp Xtext 開發 DSL 的框架 http://eclipse.org/xtext Web Tools Platform (WTP) Web 和 Java EE 應用程序編碼 http://eclipse.org/webtools
項目展示
Linux 工具
“Eclipse Linux Tools 項目很榮幸成為 Helios 同步版本的一部分”,項目負責人 Andrew Overholt 說,“我們的項目目標是為 Linux® C/C++ 開發人員提供工具,在 Eclipse 豐富的工具庫基礎之上進行構造,包括 Platform、CDT、BIRT 和 GEF。我們提供 Eclipse 插件用來集成原有開發工具,例如 GNU Autotools、LTTng、Valgrind、GCov、OProfile、RPM、GProf 和 SystemTap。我們的主要目標是提供功能齊全的 C 和 C++ IDE 給 Linux 開發人員。”
Overholt 還說:“Helios 還包括我們的 0.6 發行版,其中包含對組件的很多改進。我們的 LTTng 集成功能還包含新的直方圖,可用來可視化追蹤文件,我們的 GProf 插件現在可允許輕松查看 BIRT 驅動的圖表。僅僅提到 0.6 還不足以判斷以前版本中的工作,Eclipse 同步版中還有:
GNU Autotools 與 CDT 的集成可讓很多已有的項目使用 GNU Autotools 在 Eclipse 內部構造
由 SystemTap 驅動的 C/C++ 調用圖形工具,可用 GEF 的 Zest 查看
集成 rpmlint 的 RPM .spec 編輯器
GProf 預配置數據顯示
GCov 代碼覆蓋顯示和注釋
將原有預配置工具與 CDT 集成的框架
輕松啟動及可視化 CDT 項目的 Valgrind 內存使用分析工具
單擊OProfile 預配置與 CDT 集成
與各種版本控制提供程序集成的 ChangeLog 管理工具
插件用各種開源 API 文檔格式彌補 CDT 的懸停幫助功能;稱為 libhover
“除此之外,我們的 0.6 版本中也修復很多故障。”
Overholt 還說到:“Linux Tools 項目的目標還有增加 Linux 版本中可用的 Eclipse 技術數量。我們正為此而努力,並已提供了對 Eclipse SDK 的構造治理,它很容易應用到 Linux 版本中,並且已有了一批發行版使用者。”
圖 4. Linux Tools 實戰
Xtext
“Xtext 是一個語言開發框架,可用於輕松開發自己的域特定的或全面的編程語言以及對應的基於 Eclipse 的 IDE 支持”,Xtext 提交者 Sven Efftinge 說,“基於語法語言和一組先進的 API,可以描述出語言的語法和語義。Xtext 提供功能豐富和高度可配置的 IDE,包括驗證、代碼填充、大綱,格式,語法著色、代碼生成存根等。在 Helios 版本中,Xtext 升級到 1.0 版本。現在其特性有基於命名空間的作用域、構造程序基礎架構、基於髒狀態的驗證和連接、快速修復、連接到 Java 元素、增強的序列化支持等等。這使得 Xtext 不僅適合域特定的語言,也適於全面編程語言。”
圖 5. Xtext 實戰
Rich Ajax Platform (RAP)
RAP 使得單源桌面和網絡應用程序能輕松使用 Eclipse RCP 和 RAP。
RAP 提交者 Benjamin Muskalla 說:“Rich Ajax Platform 已經發展成為成熟的平台,可用於富 Internet 應用程序的服務器端 OSGi 開發。作為 Helios 版本的一部分,它不僅提供很多新的最先進的特性,像拖放功能、GraphicsContext 和富主題功能,還有與其他 Eclipse 項目,如 EMF 和 Riena 的緊密集成。在單源現有 RCP 應用程序中使用 RAP 在 Eclipse 社區內有享有很大的普及性。”
圖 6. RAP 應用程序示例
Sequoyah
“Sequoyah 在 2009 年 12 月獲得許可,這是一個為移動工具開發人員設立的項目,不論開發人員使用何種語言,何種平台”,項目負責人 Eric Cloninger 說,“我們的提交者來自 Motorola、Nokia 和 Wind River。Sequoyah 也得到 RIM 和 Symbian Foundation 強有力的支持。”
“項目開始時,我們僅關注 DSDP 的幾個子項目並負責 Pulsar 軟件包。對於 Helios,我們加入了新的組件,並最終成為該版本的成熟項目。Sequoyah 前途一片光明,因為有幾個新的提議正在實施,用於支持網絡應用程序和 Android 本機開發。”
圖 7. Sequoyah 實戰
PHP Development Tools (PDT)
項目負責人 Roy Ganor 說:“總結這一年來 Eclipse 和 PHP 社區的成就,Eclipse PDT 項目提供了很多源編輯功能給 PHP 開發人員,例如新的模板內容幫助和先進的語法著色。我們對質量的關注已證明是非常成功的。社區已修復超過 400 個問題,添加超過 50 個增強特性,PDT 比以前更加穩定。”
C/C++ Development Tools (CDT)
“CDT 項目給 Helios 版本提供了改進的調試支持”,CDT 項目負責人 Doug Schaefer 說,“首先,DSF/GDB 調試接口與現有的 CDI/GDB 接口足夠匹配,以保證在默認配置類型中切換。而且,還引入新的 Eclipse C/C++ Debugger (EDC) 作為可選組件,提供對 Windows 和 Linux 的 OS API 直接調試接口。在此基礎之上,我們引入新的 Codan 靜態分析框架作為可選組件,在編譯之前提供語義錯誤報告。還有,對 C++0x 的支持也運行正常,可用於配合 gcc 4.3+ 支持。”
圖 8. C/C++ Development Tools (CDT)
Mylyn
項目負責人 Mik Kersten 說:“自從去年的 Galileo 發行版以來,Mylyn 的 API 的特性和集成性大幅增長。流行特性,如 Mylyn 的 Connector Discovery 現在已可重用了。我們已安排展示以幫助不斷增加的 Mylyn 用戶管理大任務列表。有了 CDT 的支持,C/C++ 開發人員現在可以一次點擊多任務,並可以將關注范圍延伸至原有限制之外。但令人興奮的是在 Helios 發行版中 Mylyn 體系的增長。在 6 月份,大多數領先的 Agile 和 ALM 工具提供了 Mylyn 連接器,從而幫助不斷增長的開發人員社區從這個以任務為中心的接口中獲得生產率收益。”
Helios 和 Eclipse 之友
有很多人在使用 Eclipse,從開發人員到 Eclipse 社區游客。Eclipse 之友項目可以反饋 Eclipse 社區。為了慶祝將要到來的 Helios 同步版本,Eclipse Foundation 想要招募 360 名 Eclipse 的新朋友。只要 $35,就可以成為 Eclipse 之友並可以輕松獲取 Helios 發行版,直接從 Eclipse Foundation 服務器下載。您的貢獻還會以下列方式支持 Eclipse 社區:
為開發人員和用戶提供更高的帶寬
購買更多的服務器來承載 Eclipse 項目
給學生提供 Eclipse 講座
贊助 Eclipse 社區活動
圖 9. 成為 Helios 和 Eclipse 之友
Helios 感想比賽
Eclipse Foundation 想要了解您對於 Eclipse Helios 項目 作為 Helios 一部分發布的看法。Eclipse Foundation 正舉辦 感想比賽 ,因此如果您撰寫 Helios 文章,將可能獲獎。所有入圍文章將獲得 Helios T 恤。由於 Eclipse 是全球社區,盡管使用您熟悉的任何語言。
結束語
本文的目標是帶您浏覽一遍 Helios 同步版本,並演示該版本中的一些項目。文中簡要演示了 Helios 項目並引用了一些 Eclipse 項目負責人的評論。