Eclipse Indigo は eclipse.org で行われている 62 のプロジェクトの同時リリースです。統計の面で言えば、Indigo リリースには eclipse.org を支持するさまざまな企業や国のコミッター約 500 人によって開発された 4600 万行を超えるコードが含まれています。Indigo は同時リリースですが、62 のプロジェクトが一体化されているわけではありません。各プロジェクトは eclipse.org 内の別々のオープンソース・プロジェクトであり、それぞれが独自のプロジェクト・リーダーの下で作業を行い、独自のコミッターが存在し、独自の開発計画を持っています。同時リリースという概念が用意されているのは、開発サイクルを明らかで予測しやすいものにするためです。
Indigo 関連のプロジェクトを入手する方法は、主に 2 通りあります。第 1 の、そして推奨されている方法は、自分にとって関係のあるパッケージのみを取得する方法です。もう 1 つの方法は、Indigo のソフトウェア・リポジトリーから入手する方法です (「参考文献」を参照)。
Eclipse Indigo Packages サイトには、特定のニーズに合わせてあらかじめバンドルされた 16 種類の Indigo プロジェクトが用意されています (「参考文献」)。
ソフトウェア・リポジトリーを利用して Indigo を入手する場合は、Eclipse V3.7 SDK をダウンロードします。ダウンロードした後、Eclipse を起動して「Help (ヘルプ)」 > 「Install New Software (新規ソフトウェアのインストール)」の順に選択すると、ソフトウェア更新メカニズムを利用することができます (図 1)。Indigo リポジトリーの情報がお使いの Eclipse に登録されていない場合には、適切な情報を入力します (例えば http://download.eclipse.org/releases/indigo など)。リポジトリーに接続できると、Indigo リリースに含まれる入手可能なプロジェクトの一覧が表示されるので、後はお使いの Eclipse にインストールしたいフィーチャーを選択すればよいという簡単なものです。
図 1. Indigo リポジトリーを閲覧する
重要な注意点として、Eclipse Indigo リリースの一部として Eclipse Marketplace が更新されています。Eclipse Marketplace は Eclipse コミュニティーの便利なポータルとして、オープンソースや商用で提供されている Eclipse 関連のソリューションを見つける上で役に立ちます。パッケージを利用して Indigo をダウンロードした場合には、「Help (ヘルプ)」 > 「Eclipse Marketplace (Eclipse マーケットプレイス)」の順に選択してEclipse Marketplace のクライアント (「参考文献」を参照) を利用することで、Marketplace に提供されているソリューションを容易に閲覧したり、それらを Eclipse にインストールしたりすることができます (図 2)。
図 2. Eclipse Marketplace を閲覧する
Eclipse の同時リリースとしては過去最大である Indigo の主な特徴は以下のとおりです。
- EGit 1.0 は、Git バージョン管理システムと緊密に統合することができます。
- WindowBuilder は、Eclipse 開発者がよく使用している GUI ビルダーであり、今回オープンソースとして Indigo の一部となりました。
- M2E は、従来以上に緊密に Maven と統合され、Maven ビルドの起動や pom ファイルの保守もできるようになっています。
- ドラッグ・インストールのサポートが Eclipse Marketplace のクライアントに追加されました。
- Jubula は、Java と HTML による GUI の自動機能テストを提供します。
これらの機能の詳細については「参考文献」を参照してください。
同時リリースに含まれる 62 のプロジェクトの完全な一覧は Indigo プロジェクトのページに記載されています。
以下のテーブルには、この同時リリースで新たに追加されたプロジェクトを挙げてあります。
表 1. 同時リリースで新たに追加されたプロジェクト
| プロジェクト | 説明 |
|---|---|
| Agent Modeling Platform (AMP) | エージェント・ベース・モデル (ABM) を表現、編集、生成、実行、視覚化するのと同時に、空間的な特徴や、振る舞いに関する特徴、機能面での特徴などを要求する ABM 以外の領域についても表現、編集、生成、実行、視覚化するための、拡張可能なフレームワークであり、サンプル・ツールでもあります。 |
| Eclipse Generation Factories (EGF) | 拡張可能なモデル・ベースの生成フレームワークであり、複雑でカスタマイズ可能かつ統合的な生成をサポートします。 |
| EMF Facet | 既存の Ecore メタモデルを変更せずに拡張するためのソリューションです。 |
| Gyrex | Equinox ベースのサーバー・ソリューションのための、オープンで動的かつ拡張可能なプラットフォームです。 |
| Jubula | Jubula は、Java と HTML による GUI の自動機能テストを提供します。 |
| Maven Integration (M2E) | Eclipse IDE で Apache Maven を強力にサポートできるようにします。 |
| ObjectTeams | ロールその他によるプログラミングを実現します。 |
| Runtime Packaging Project (RTP) | RTP プロジェクトは既存の EclipseRT 技術を使用することで、さまざまなプラットフォームやアーキテクチャー用のランタイムのセットアップに使用可能な各種パッケージを提供します。 |
| Scout | SOA や Java 準拠のビジネス・ソフトウェアに必要な開発時間を大幅に短縮することができます。 |
| WindowBuilder | 強力で使いやすい双方向の Java GUI デザイナーです。 |
これらのプロジェクトの詳細については「参考文献」を参照してください。
Indigo 同時リリースに含まれるプロジェクトの概要を知るために、それぞれのプロジェクト・リーダーの言葉を以下に引用します。
「最後の協調リリース以来、Mylyn は最上位レベルのプロジェクトに格上げされ、API の境界に合わせていくつかのサブプロジェクトに分割されました。これは Mylyn プロジェクトの大きな成長を反映しています。分割されたサブプロジェクトには、重要な ALM コンポーネント (Context、Docs、Builds、Tasks、Reviews、Versions) のためのフレームワーク、API、ツールが用意されています。Mylyn Builds プロジェクトのコンポーネントのなかでも、非常によく使用されていて、他のいくつかの新しいコネクターと共に拡張機能ポータルから入手できるのは、Hudson/Jenkins を統合するためのコンポーネントです。Hudson/Jenkins コネクターは、シームレスな IDE との統合によって、ビルドの状態を Eclipse からモニタリングするためのビューを提供し、ビルド結果の表示、失敗したテストの再実行、ビルドからのタスク作成などを数回のクリックで行えるようにします。」
「その他に特記すべき機能としては、タスクを起動するとスタック・トレースを含むコンテキストが自動的に追加され、対象のソースへのナビゲートが非常に容易になる機能、そしてタスク・リストに新しいフィルターが追加され、受信する通知の数を制御できる機能などが挙げられます。また、タスク・エディターのユーザー・エクスペリエンスが改善され、Gravatar 画像を使用してタスクの割り当て対象を即座に認識できるようになりました。これらをはじめとする機能強化によって、Mylyn の Indigo リリースでは、タスクに焦点を当てたインターフェースが従来以上に合理的になっています。」
-- Mik Kersten (プロジェクト・リーダー)
図 3. Mylyn のビルド
「CDT には多くの機能を追加しましたが、私が気に入っているのは Codan です。Codan は軽量の静的分析フレームワークであり、コードにチェッカーを追加してリアルタイムで分析を行い (図 4)、一般的な問題点やその他の事項を見つけることができます。」
-- Doug Scheafer (プロジェクト・リーダー)
図 4. Codan
「Linux Tools チームはトレースとプロファイリングのサポートを従来から重視しており、トレースの可視化とプロファイリング・ツールの堅牢さの面で改善をしています。また、Indigo に対する私達の貢献として、Linux で C/C++ 開発を行う人達のために、API ドキュメンテーション・プロバイダーが新規に作成され、また改善されています。Linux Tools プロジェクトのコントリビューターと利用者は増加を続けており、いくつもの商用製品が私達の作業を基に構築され、さらに多くの Linux ディストリビューションに Eclipse でビルドされた Eclipse SDK ビルド・ハーネスが利用され、またそれらのディストリビューションが Eclipse SDK ビルド・ハーネスに寄与しています。」
-- Andrew Overholt (プロジェクト・リーダー)
「Riena は最新の Eclipse 技術を使用してエンタープライズ対応のクライアント/サーバー・アプリケーションを作成するためのフレームワークです。典型的な Riena クライアント・アプリケーションの中心となるのは、エンドユーザー指向の直感的なアプリケーション・ナビゲーション・システムです。このナビゲーション・システムでは、アプリケーションの多くのビューをサブアプリケーション、グループ、モジュールへと構造化します。Indigo リリースに向けて Riena 3.0 で大きく変わった点は、Eclipse RCP を使用してデスクトップで実行できるだけではなく、RAP プロジェクトを使用してブラウザーでも実行できるようになったことです (図 5)。Riena を Web 対応にするために、Riena フレームワークをシングル・ソースにする必要があっただけではなく、私達はシングル・セッション環境 (デスクトップ RCP クライアント) とマルチセッション環境 (RAP Web アプリケーション) との間でクライアント・アプリケーションのコードを容易に切り換えるための追加の API も提供しようとしています。」
-- Christian Campo (プロジェクト・リーダー)
図 5. Riena
「Xtext 2.0 は大幅にパフォーマンスが改善され、あらゆるドメイン特化言語 (DSL) に対応するリファクタリング (図 6) やリッチ・ホバーなど、まったく新しい IDE の機能が大量に追加されています。なかでも最も重要なのは、任意の DSL の中で再利用可能な静的型付けのベース言語で、これにより、まったく新しい可能性が生まれます。」
-- Sven Efftinge (プロジェクト・リーダー)
図 6. Xtext 2.0 の新しい IDE の機能
Eclipse を使用する人は開発者から単なるユーザーに至るまで数多くおり、その人達は何らかの形で Eclipse コミュニティーにお返しをしたいと時折思っています。Friends of Eclipse プログラムを利用すると、Eclipse コミュニティーへのお返しとしてコミュニティーに貢献することができます。Eclipse Foundation は来たる Indigo 同時リリースを祝うため、Indigo 500 (図 7) を通じて Friends of Eclipse を 500 人募集したいと考えています。35 ドルを寄付すると、Friends of Eclipse になることができ、Eclipse Foundation のダウンロード・サーバーから直接、他の人よりも早く Indigo リリースにアクセスできるようになります (「参考文献」を参照)。また皆さんからの寄付により、以下の形で Eclipse コミュニティーを支援することができます。
- ユーザーや開発者への帯域幅の増加
- Eclipse プロジェクトをホストするサーバーの追加購入
- Eclipse カンファレンスへの学生の招待
- Eclipse コミュニティーのイベントに対する後援
図 7. Indigo 500
Orion は Eclipse の最上位レベル・プロジェクトの下で運営されている新しいオープンソース・プロジェクトです。Orion の目的は、Web を対象に、Web 上での開発に完全に焦点を絞ったブラウザー・ベースのオープン・ツール統合プラットフォームを作成することです。これらのツールは JavaScript で作成され、ブラウザーで実行されます (図 8)。
ブラウザー・ベースの開発ツールを作成しようとする他の試みとは異なり、Orion は 1 つのタブ内で実行される IDE ではありません。リンクは機能し、共有することができます。また、ファイルは新しいタブで開くことができます。Web 感覚で開発を行えるように、十分な考慮がなされています。Eclipse Foundation は将来、Web 技術に関するさらに多くの領域にも進むものと期待してください。
図 8. Eclipse Orion
この記事の目標は、Indigo 同時リリースの全体の概要を紹介し、このリリースに含まれるいくつかのプロジェクトについて説明することでした。そのために Indigo プロジェクトのツアーを行い、それぞれの Eclipse プロジェクトのリーダーの言葉を引用しました。また Orion プロジェクトを取り上げ、今後 Eclipse で行われる作業の一部を簡単に紹介しました。
もう待つ必要はありません。今すぐ Eclipse Indigo を入手し、試してみてください。
学ぶために
- Indigo は Eclipse プロジェクトから毎年公開される同時リリースの 1 つであり、来たる 2011年 6月 22日にリリースされます。
- EGit 1.0 は Git バージョン管理システムと緊密に統合することができます。
- 「XML-RPC で C++
アプリケーションを Web サービス対応可能にする」(developerWorks、2006年6月) は、C++ のメソッドをサービスとして公開するための手順をステップバイステップで説明しています。
- Friends of Eclipse プログラムを利用すると、Eclipse
コミュニティーへのお返しとしてコミュニティーに貢献することができます。Eclipse Foundation は来たる Indigo 同時リリースを祝うため、Indigo 500 を通じて Friends of Eclipse を 500 人募集したいと考えています。
- Orion は Eclipse の最上位レベル・プロジェクトの下で運営されている新しいオープンソース・プロジェクトです。
- developerWorks を Twitter でフォローし、最新ニュースを入手してください。
- developerWorks の Open source ゾーンをご覧ください。オープンソース技術を使用した開発や、IBM 製品でオープンソース技術を使用するためのハウ・ツー情報やツール、プロジェクトの更新情報など、豊富な情報が用意されています。
- IBM オープンソース開発者にとって関心のある、今後開催される会議や業界展示会、ウェブキャスト、その他のイベントについて調べてみてください。
- developerWorks podcasts でソフトウェア開発者のための興味深いインタビューや議論を聞いてください。
- IBM とオープンソース技術、そして製品機能を調べ、学ぶために、無料の developerWorks On demand
demos をご覧ください。
製品や技術を入手するために
- Indigo ソフトウェア・リポジトリーは Indigo を入手するための 1 つの方法です。
- Indigo
プロジェクトのページには、62 のプロジェクトすべての一覧が記載されています。今回の同時リリースで新規のプロジェクトは、Agent Modeling Platform (AMP)、Eclipse Generation Factories
(EGF)、EMF Facet、Gyrex、Jubula、Maven Integration (M2E)、ObjectTeams、Runtime
Packaging Project (RTP)、Scout、WindowBuilder です。
- Eclipse Marketplace
はオープンソースや商用で提供されている Eclipse 関連のサービスやソフトウェアを見つけるために便利なポータルです。パッケージを利用して Indigo
をダウンロードした場合には、Eclipse Marketplace クライアントを利用することができます。
- Eclipse Indigo パッケージを入手してください。
- 皆さんの次期オープンソース開発プロジェクトを IBM ソフトウェアの試用版を使って革新してください。ダウンロードあるいは DVD で入手することができます。
議論するために
- developerWorks
コミュニティーで開発者向けのブログ、フォーラム、グループ、ウィキなどを利用しながら、他の developerWorks
ユーザーとやり取りしてください。developerWorks コミュニティーの Real world open source グループを構築する作業を支援してください。

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 を指定して彼をフォローしてください。