Eclipseが待望のバージョンアップ

2009年6月24日、オープンソースのJava統合開発環境Eclipse 3.5 Galileo(以下Galileo)がリリースされた。

Java統合開発環境としてのEclipseはすでに十分成熟しているということもあり、昨年リリースされた3.4と同様、それほど大きな新機能は見られないものの、細かな使い勝手の改善、Cocoaのサポート、PHP開発やモバイル開発をサポートするパッケージが新たに提供されるようになるなど見どころは多い。

今回はこのEclipse 3.5の主な新機能を紹介しようと思う。

PHP開発/モバイル開発用の新パッケージが登場

Eclipse.org では各種プラグインを同梱したパッケージを配布しているが、Galileoでは新たにPHP開発をサポートする「Eclipse for PHP Developers」、モバイル開発をサポートする「Pulsar for Mobile Java Developers」が追加された。

Galileoで提供されるパッケージと、各パッケージに含まれるプラグインは以下の通りだ。

表1 Galileoで提供されるパッケージ

PHP開発ではPDT(PHP Development Tools)というプラグインがコアとなっている。PDTについては以前も本連載で取り上げたことがあるが、非常に完成度の高いプラグインであり、今回のアップデートでPHP 5.3に対応する。今後PHP開発環境としてEclipseが有力な選択肢となることだろう。

また、モバイル開発ではMTJ(Mobile Tools for Java: 組み込み向けの開発ツールを整備しているDSDPのサブプロジェクトとして開発されている)というプラグインが同梱されており、JavaMEでの開発をサポートする。

Wikiテキストをサポート

GalileoではMylynのタスクエディタでWiki形式のテキストの編集を行うことができるようになった。

また、タスクエディタだけでなく、拡張子を*.tracwikiなどとしてファイルを作成すると、Trac形式のWiki形式テキスト用のエディタで編集することができる。

Wikiテキストの編集時はHTMLプレビューや、範囲選択した状態でCTRL+SPACEを入力することでWiki書式のアシストが可能なほか、DocBookやHTMLでのエクスポートも可能となっている。Eclipseのヘルプ形式でのエクスポートも可能なため、Eclipseプラグイン開発者はドキュメントの作成にも活用できるだろう。

図1 WikiTextエディタ

図2 WikiTextのプレビュー

WikiTextエディタでサポートしているWikiテキストの形式とファイルの拡張子は以下の通りだ。

  • Confluence (*.confluence)
  • MediaWiki (*.mediawiki)
  • Textile (*.textile)
  • TracWiki (*.tracwiki)
  • TWiki (*.twiki)

XMLパースペクティブの追加

新たなパースペクティブとしてXMLの編集をサポートするXMLパースペクティブが追加された。

アクティブなXMLエディタに対してXPathで検索を行い、該当箇所にジャンプできるXPathビューや、XSLの編集/実行・デバッグといった機能が追加されている。いずれも利用する機会は少ないかもしれないが、覚えておきたい機能だ。

図3 XPathビュー

図4 XSLのデバッグ

その他の新機能

Java開発環境であるJDTには大きな新機能は見当たらないが、以下のように使い勝手を向上させるさまざまな機能が追加されている。

  • コンストラクタの入力補完
  • Javaの比較エディタの改善
  • Javadocのホバー表示でもリンクをクリック可能になった
  • クイックフィクスでリネームリファクタリングを呼び出せるようになった
  • toString()、hashCode()、equals()メソッドを生成するためのウィザード
  • コンパイラでデッドコードを検出可能になった

また、GalileoではテキストエディタでのALT + SHIFT + A(ツールバーからも可能)で矩形選択が可能になった。また、CTRL + PAGE UPおよびCTRL + PAGE DOWNでエディタの切り替え、ALT + PAGE UPおよびALT + PAGE DOWNでマルチページエディタのタブの切り替えが可能になっている。

図5 テキストエディタでの矩形選択

その他、変わったとことろではMicrosoft Wordの差分比較機能も可能になっている。

図6 Wordの比較

まとめ

以前から見られる傾向だが、Galileoでは基本機能よりも補助的な機能の追加が目立つ。これは裏を返せばEclipseは当初の目論見通り、Java開発環境としてだけではなくさまざまなツール/アプリケーションのプラットフォームとして機能しているということだ。Eclipse.orgのプロジェクト群にプラットフォーム/フレームワークやランタイム系のプロジェクトが増えていることからも明らかであり、この方向性は今後もますます強くなっていくことだろう。

Java開発環境としてだけではなく、プラットフォームとしてのEclipseが今後どのように進化していくのか、来年のリリースまで期待して待ちたい。