Helios は 39 の Eclipse プロジェクトの同時リリースです。統計から言うと、Helios リリースには 44 社の企業から約 500 人の Eclipse.org コミッターが関与し、彼らが開発した 3300 万行のコードが含まれています。Helios および Eclipse の同時リリース全般に関して重要な点は、同時リリースとは言っても、各リリースに含まれるプロジェクトは統合されているわけではないことです。いずれのプロジェクトも Eclipse.org 内で独立したオープンソース・プロジェクトとして、それぞれに固有のプロジェクト・リーダーシップ、コミッター、開発計画で推進されています。同時リリースという概念は、透過的かつ予測可能な開発サイクルを提供することを目的としています。
Helio 関連のプロジェクトを入手するには、主に 2 つの方法があります。推奨されている方法は、自分に関係するパッケージだけを取得する方法です。もう 1 つの方法は、Eclipse.org の Helios ソフトウェア・リポジトリー経由で入手する方法です。
図 1. Helios パッケージ
Eclipse Helios Packages サイトにアクセスしてください。このパッケージ・サイトには、それぞれのニーズに合わせてあらかじめバンドルされた 12 の Helios バージョンが揃っています。
ソフトウェア・リポジトリーを利用して Helios を入手する場合は、Eclipse V3.6 SDK をダウンロードしてください。ダウンロードした後、Eclipse を起動して「Help (ヘルプ)」 > 「Software Updates (新規ソフトウェアのインストール)」の順に選択すると、ソフトウェア更新メカニズムを使用することができます (図 2 を参照)。Helios リポジトリー情報がまだ登録されていない場合は、適切な情報を入力します。リポジトリーに接続されると、Helios リリースに含まれる入手可能なプロジェクトの一覧が表示されます。手順はたったこれだけです。リポジトリーに接続しさえすれば、後はお使いのEclipse にインストールしたいフィーチャーを選択することができます。
図 2. Helios リポジトリーの参照
重要な点として、Eclipse マーケットプレイスは Eclipse Helios リリースの一部として開始されました。Eclipse Marketplace は Eclipse コミュニティーに、Eclipse 関連のオープンソースおよび商用のオファリングを検索するために使える便利なポータルを提供します。Helios をパッケージでダウンロードした場合、「Help (ヘルプ)」 > 「Eclipse Marketplace (Eclipse マーケットプレイス)」の順に選択して Eclipse マーケットプレイス・クライアントにアクセスすると、簡単に Eclipse マーケットプレイスのオファリングを参照して Eclipse にインストールすることができます (図 3 を参照)。
図 3. Eclipse マーケットプレイスの参照
表 1. Helios リリースのプロジェクト
| プロジェクト | 概要 | Web サイト |
|---|---|---|
| Acceleo | OMG MOF MTL (Model to Text Language) 標準の実用的実装 | http://eclipse.org/acceleo |
| ATF (Accessibility Tools Framework) | 障害者を対象としたアプリケーションおよびコンテンツの作成 | http://eclipse.org/actf |
| Amalgam | パッケージングおよびユーザビリティーが改善された Eclipse モデリング・プロジェクト | http://eclipse.org/amalgamlgam |
| ATL (Atlas Transformation Language) | モデル変換言語およびツールキット | http://eclipse.org/m2m/atl |
| BPMN Modeler | ビジネス・アナリストを対象としたビジネス・プロセス図エディター | http://eclipse.org/bpmn |
| Buckminster | プロセスのビルド、アセンブル、デプロイを自動化するためのフレームワークとツールの一式 | http://eclipse.org/buckminster |
| BIRT (Business Intelligence and Reporting Tools) | レポートの生成 | http://eclipse.org/birt |
| CDT (C/C++ Development Tooling) | C/C++ 言語でのコーディング | http://eclipse.org/cdt |
| CDO (Connected Data Objects) Model Repository | EMF モデルおよびメタモデルのための分散共有モデル・フレームワーク | http://eclipse.org/cdo |
| Dali | Java™ パーシスタンス・ツール | http://eclipse.org/dali |
| DTP (Data Tools Platform) | データベースを操作するための拡張可能なフレームワーク兼ツール | http://eclipse.org/datatools |
| DLTK (Dynamic Languages Toolkit) | 動的言語を操作するための拡張可能なフレームワーク兼ツール | http://eclipse.org/dltk |
| ECF (Eclipse Communication Framework) | 分散ツールおよびアプリケーションの開発をサポートするためのフレームワーク | http://eclipse.org/ecf |
| EclipseLink | アプリケーションへのパーシスタンスの追加 | http://eclipse.org/eclipselink |
| EMF (Eclipse Modeling Framework) | モデリング・フレームワークおよびコード生成機能 | http://eclipse.org/emf |
| EPP (Eclipse Packaging Project) | パッケージおよび 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 |
| EEF (Extended Editing Framework) | EMF モデル編集方法の改善 | http://eclipse.org/modeling/emft/?project=eef |
| GEF (Graphical Editing Framework) | グラフィカル・アプリケーションの開発 | http://eclipse.org/gef |
| GMF (Graphical Modeling Framework) | EMF を使用したグラフィカル・エディターの開発 | http://eclipse.org/gmf |
| JDT (Java Development Tools) | Java 技術のコーディング | http://eclipse.org/jdt |
| JET (Java Emitter Templates) | コード生成ライブラリー | http://eclipse.org/modeling/m2t/?project=jet |
| JSDT (JavaScript Development Tools) | JavaScript のコーディング | http://eclipse.org/webtools/jsdt |
| JSF (JavaServer Faces) Tools | JSF アプリケーションの開発 | http://eclipse.org/webtools/jsf |
| JWT (Java Workflow Tooling) | ワークフローおよびプロセス用ツール | http://eclipse.org/jwt |
| Jetty | 高速かつ強力な Web サーバー関連の技術 | http://eclipse.org/jetty |
| JGit | Git の Java 実装 | http://eclipse.org/jgit |
| Linux Tools | Eclipse への GNU Autotools、Valgrind、OProfile、SystemTap の統合 | http://eclipse.org/linuxtools |
| MPC (Marketplace Client) | Eclipse マーケットプレイスからのフィーチャーのインストール | http://eclipse.org/mpc |
| MDT UML2 | UML (Unified Modeling Language) 2 の EMF ベースの実装 | http://eclipse.org/modeling/mdt/?project=uml2 |
| MDT OCL | OCL (Object Constraint Language) の EMF ベースの実装 | http://eclipse.org/modeling/mdt/?project=ocl |
| MDT XSD | XSD (XML Schema Definition) の EMF ベースの実装 | http://eclipse.org/modeling/mdt/?project=xsd |
| MAT (Memory Analyzer) | メモリー・リークの検出およびヒープ・ダンプの分析 | http://eclipse.org/mat |
| Mint | JDT と EMF の統合 | http://eclipse.org/modeling/emft/?project=mint |
| MTJ (Mobile Tools for Java) | モバイル機器用 Java アプリケーションの開発 | http://eclipse.org/dsdp/mtj/ |
| M2T (Model To Text) | モデルからのテキスト成果物の生成 | http://eclipse.org/m2t |
| Modeling Team Framework | ソフトウェア構成管理に対応する EMF | http://eclipse.org/modeling/emft |
| MWE (Modeling Workflow Engine) | 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 |
| PTP (Parallel Tools Platform) | 並列アプリケーション開発用ツール | http://eclipse.org/ptp |
| Photran | Fortran のコーディング | http://eclipse.org/photran |
| PDT (PHP Development Tools) | PHP のコーディング | http://eclipse.org/pdt |
| PDE (Plug-in Development Environment) | Eclipse および OSGi ベースのアプリケーション用ツール | http://eclipse.org/pde |
| RAP (Rich Ajax Platform) | Web での RCP アプリケーションの実行 | http://eclipse.org/rap |
| SCA (Service Component Architecture) 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 |
| TPTP (Test and Performance Tools Platform Project) | アプリケーションのプロファイル作成およびテスト用ツール | http://eclipse.org/tptp |
| Xtext | DSL 開発用フレームワーク | http://eclipse.org/xtext |
| WTP (Web Tools Platform) | Web および Java EE アプリケーションのコーディング | http://eclipse.org/webtools |
「Eclipse Linux Tools プロジェクトが Helios 同時リリースに加わることになって喜んでいます」。これは、このプロジェクトのリーダーを務める Andrew Overholt 氏の言葉です。「我々のプロジェクトが目的としているのは、Platform や CDT、それに BIRT、GEF をはじめとする豊富な Eclipse ツールをベースに作成した Linux® C/C++ 開発者向けツールを提供することです。現在、GNU Autotools、LTTng、Valgrind、GCov、OProfile、RPM、GProf、そして SystemTap などのネイティブ開発ツールと統合するための Eclipse プラグインを提供しています。最終的には、フル機能を備えた Linux 開発者向けの C および C++ IDE を提供することを目指しています」。
彼はまた、次のように言っています。「Helios に含まれている 0.6 リリースでは、コンポーネントの多くに改善を加えました。例えば LTTng 統合には、トレース・ファイルの可視化を支援する新たなヒストグラム・ビューが備わっています。また、GProf プラグインでも、BIRT によって作成されたチャートを簡単に表示できるようになっています。0.6 リリースだけを話題に取り上げるのでは、これまでのリリースで行われてきた作業を正当に評価していることになりません。以前のリリースは Eclipse 同時リリースに加えられることはなかったものの、次の成果を達成しました。
- GNU Autotools を用いている数多くの既存のプロジェクトを Eclipse 内からビルドできるようにする、GNU Autotools と CDT の統合
- SystemTap で駆動され、GEF の Zest によって可視化される、C/C++ コール・グラフ・ユーティリティー
- rpmlint を統合した RPM .spec エディター
- GProf プロファイル・データの表示
- GCov コード・カバレッジの表示およびアノテーション
- ネイティブ・プロファイル作成ツールと CDT を統合するためのフレームワーク
- CDT プロジェクト用 Valgrind メモリー使用分析ツールの簡単な起動および可視化
- ワン・クリックによる OProfile でのプロファイル作成と CDT との統合
- 各種バージョン管理プロバイダーを統合する ChangeLog 管理ツール
- CDT のホバー・ヘルプ機能を各種オープンソース API マニュアルのフォーマットで使用できるようにする libhover プラグイン
「その上、0.6 リリースでは大々的なバグ修正も行いました」。
Overholt 氏曰く、「Linux Tools プロジェクトには、Linux ディストリビューションで使用できる Eclipse 技術を増やすという目標もあります。現在この目標達成に向けて、Eclipse SDK のビルド・ハーネスを提供しています。Linux ディストリビューションで簡単に使用できるこのハーネスは、すでに多くのディストリビューションで利用されています」。
図 4. 実行中の Linux Tools
「Xtext は、独自のドメイン特化言語や本格的なプログラミング言語を容易に開発できるようにするための言語開発フレームワークで、その言語に対応する Eclipse ベースの IDE サポートの開発も可能にします」。これは、Xtext コミッターの Sven Efftinge 氏による説明です。彼は次のように続けています。「開発者は、文法を記述するための言語と最新の API 一式を使用して、言語の構文と意味体系を記述することができます。Xtext が提供する IDE は、検証やコード補完、そしてアウトライン、フォーマット設定、構文の色分け、コード生成スタブなどの豊富な機能が備わっており、しかも柔軟に構成することができます。Helios リリースでバージョン 1.0 に進化した Xtext には、名前空間ベースのスコープ設定、ビルダー・インフラストラクチャー、ダーティー状態に基づく検証とリンク、クイック・フィックス、Java 要素へのリンク、強化されたシリアライズのサポートなども追加されました。これらの新機能により、Xtext はドメイン特化言語だけでなく、本格的なプログラミング言語にも対応できるようになっています」。
図 5. 使用中の Xtext
RAP によって、Eclipse のRCP と RAP との間でデスクトップ・アプリケーションと Web アプリケーションのソースを 1 つに統一しやすくなります。
RAP コミッターの Benjamin Muskalla 氏は、次のように述べています。「Rich Ajax Platform は、OSGi を使ってサーバー・サイドでリッチ・インターネット・アプリケーションを開発するための成熟したプラットフォームへと成長しました。Helios リリースの一部として、Rich Ajax Platform はドラッグ・アンド・ドロップや GraphicsContext、そして充実したテーマ設定機能といった、数々の新しい最先端技術を利用した機能を提供しているだけでなく、EMF や Riena のような他の Eclipse プロジェクトとも緊密に統合します。RAP を使って既存の RCP アプリケーションを単一ソースにする方法は、Eclipse コミュニティー内で絶大な人気を得ています」。
図 6. RAP アプリケーションの例
「Sequoyah は 2009年 12月、使用する言語やモバイル・プラットフォームに関係なくモバイル・ツールを開発するためのプロジェクトとして開始されました」。これは、プロジェクト・リーダーを務める Eric Cloninger 氏の説明です。「コミッターには Motorola、Nokia、Wind River からの顔ぶれが揃っています。また、RIM と Symbian Foundation も Sequoyah に積極的に参加しています」。
「私たちは、焦点が絞り込まれたいくつかのサブプロジェクトを DSDP プロジェクトから抜き出してこのプロジェクトを開始し、Pulsar パッケージを引き継ぎました。Helios リリースに向けて新しいコンポーネントを追加した Sequoyah は、このリリースで成熟したプロジェクトとして進化を遂げると思います。さらに、Web アプリケーションと Android のネイティブ開発をサポートするための新たな企画もいろいろと進行しているので、Sequoyah の将来は前途有望です」。
図 7. 実行中の Sequoyah
PDT プロジェクト・リーダー、Roy Ganor 氏の言葉です。「Eclipse コミュニティーと PHP コミュニティーの両方にとっての素晴らしい 1 年間を集約した Eclipse PDT プロジェクトは、新しいテンプレート・コンテンツ・アシストや高度な構文色分けなど、PHP 開発者向けのソース編集機能をさらに充実させています。私たちの品質への取り組みは大成功を収め、コミュニティーの貢献による 400 を超える問題の修正、そして 50 を超える機能拡張により、PDT はこれまで以上に安定したものになっています」。
「Helios リリースを機に、CDT プロジェクトでは改善されたデバッグ・サポートを提供するようになっています」。これは、CDT プロジェクト・リーダーの Doug Schaefer 氏の説明です。「まず第 1 に、DSF/GDB デバッグ・インターフェースが既存の CDI/GDB インターフェースと同等なレベルにまで達し、デフォルト起動構成タイプの切り替えを保証するようになりました。さらに、オプション・コンポーネントとして新しい EDC (Eclipse C/C++ Debugger) が導入されました。EDC は、Windows および Linux の OS API と直接インターフェースを取るデバッガーです。その上、コンパイルに先だってセマンティックに関するエラー・レポートを提供する新しい Codan 静的分析フレームワークもオプション・コンポーネントとして導入されています。また、C++0x のサポートは、gcc 4.3+ が提供するサポートに匹敵するほどに進化しています」。
図 8. CDT (C/C++ Development Tools)
このプロジェクトのリーダーである Mik Kersten 氏によると、「昨年の Galileo リリース以来、Mylyn の API、フィーチャー、統合は大きく進化しました。現在、Mylyn の Connector Discovery など、よく使われる機能は再利用可能になっています。非常に大きなタスク・リストを管理する Mylyn ユーザーが増え続けていることから、そのようなユーザーに役立つようにスケジュール表示部分を新たに作成し直しました。現在、C/C++ 開発者はワン・クリックのみで、CDT をサポートするマルチタスク機能およびワークスペース・フォーカス機能をすぐに使えるようになっています。しかし最もエキサイティングな成果は、Helios リリースを機に Mylyn エコシステムが大きく成長したことです。6 月の時点で、主要なアジャイル・ツールと ALM ツールの大半が Mylyn コネクターを提供するようになり、開発者コミュニティーのますます多くの人たちにタスク集中型インターフェースによる生産性向上がもたらされるようになっています」。
世間には、開発者から何らかの形で Eclipse コミュニティーに貢献したいと思っているユーザーに至るまで、Eclipse を使用している人々が数多くいます。Friends of Eclipse プログラムでは、そのような人々が Eclipse コミュニティーに貢献できるようになっています。来たる Helios 同時リリースの記念として、Eclipse Foundation では 360 人の新しい Friends of Eclipse メンバーを募集しています。$35 を寄付すれば Friend of Eclipse メンバーとして登録されて、Eclipse Foundation のダウンロード・サーバーから一足先に直接 Helios リリースをダウンロードできます。寄付金はまた、さまざまな形で Eclipse コミュニティーへの支援にも役立てられます。支援内容には、例えば以下のものがあります。
- ユーザーと開発者のための帯域幅の追加
- Eclipse プロジェクトをホストするサーバーの追加購入
- Eclipse カンファレンスへの学生の派遣
- Eclipse コミュニティー・イベントの後援
図 9. Helios と Eclipse の仲間になる
Eclipse Foundation に、Helios の一部として出荷されている Eclipse Helios プロジェクトに関する皆さんのご意見をお寄せください。Eclipse Foundation では、レビュー・コンテストを開催しているので、Helios に関するレビューを書いて応募すると、賞の選考対象としてエントリーされます。資格要件を満たしたレビューに対しては、もれなく Helios T シャツが贈られます。Eclipse は国際的なコミュニティーなので、レビューの文書作成またはビデオ・レビューの録画には、遠慮なく使い慣れた言語を使ってください。
この記事で目的としたのは、Helios 同時リリースについて一通り説明し、このリリースに含まれるプロジェクトを具体的に紹介することです。この目的のために、Eclipse プロジェクト・リーダーの言葉を引用しながら Helios プロジェクトを紹介しました。
リリースの内容がわかったところで、もう待つ必要はありません。早速 Eclipse Helios を入手して試してみてください。
学ぶために
- Helios In Action 仮想コンファレンスを見て、Helios プロジェクトに関する詳しい情報を入手してください。
- 無料の developerWorks Live! briefing に参加して、IBM 製品およびツール、そして IT 業界の傾向を素早く学んでください。
- 「Eclipse の推奨読み物リスト」を読んでください。
- developerWorks ですべての Eclipse 関連記事を調べてください。
- Twitter で developerWorks をフォローしてください。
- Eclipse の初心者は、developerWorks の記事「Eclipse Platform 入門」を読んでください。Eclipse の起源とアーキテクチャー、そしてプラグインで Eclipse を拡張する方法を学べます。
- IBM developerWorks の Eclipse project resources を調べて、Eclipse のスキルを磨いてください。
- developerWorks podcasts ではソフトウェア開発者のための興味深いインタビューや議論を聞くことができます。
- My developerWorks コミュニティーは、多種多様なトピックを網羅した全般的コミュニティーの成功例です。
- developerWorks の Technical events and webcasts で最新情報を入手してください。
- 無料の developerWorks On demand demos で、IBM およびオープンソースの技術と製品機能を調べて試してみてください。
- 世界中で近日中に予定されている IBM オープンソース開発者を対象とした会議、見本市、ウェブキャストやその他のイベントをチェックしてください。
- オープンソース技術を使用して開発し、IBM の製品と併用するときに役立つ広範囲のハウツー情報、ツール、およびプロジェクト・アップデートについては、developerWorks Open source ゾーンを参照してください。
製品や技術を入手するために
- IBM alphaWorks で Eclipse 技術の最新ダウンロードを調べてください。
- Eclipse Foundation から Eclipse Platform およびその他のプロジェクトをダウンロードしてください。
- IBM 製品の評価版をダウンロードするか、あるいは IBM SOA Sandbox のオンライン試用版で、DB2®、Lotus®、Rational®、Tivoli®、および WebSphere® などが提供するアプリケーション開発ツールやミドルウェア製品を試してみてください。
- IBM ソフトウェアの試用版を使用して、次のオープンソース開発プロジェクトを革新してください。ダウンロード、あるいは DVD で入手できます。
議論するために
- Eclipse に関する質問を投じる最初の場所として、Eclipse Platform newsgroups があります (このリンクをクリックすると、デフォルト Usenet ニュース・リーダー・アプリケーションが起動され、eclipse.platform が開きます)。
- Eclipse newsgroups には Eclipse を利用し、拡張することに関心を持つ人達のために、さまざまなリソースが用意されています。
- developerWorks blogs から developerWorks コミュニティーに加わってください。

Eclipse PDE (Plug-in Development Environment) プロジェクトの共同リーダーを務める Chris Aniszczyk は、Red Hat の主任ソフトウェア・エンジニアです。『The Eclipse Rich Client Platform』の共著者であり、Eclipse コミュニティーの Top Ambassador および Top Committer の受賞者として知られる彼は、さまざまな Eclipse プロジェクトに貢献し、Eclipse コミュニティー内の至る所に姿を現しています。彼は Eclipse Architecture Council、Eclipse Planning Council のメンバーで、Eclipse Foundation の理事会ではコミッター代表を務めるという名誉を授かっています。彼は冷たい飲み物を口にしながら、オープンソースや Eclipse に関する議論にいつでも応じてくれます。ここをクリックすると、彼のブログを読めます。また、Twitter で @caniszczyk を指定して彼をフォローしてください。