from Ganymede to Galileo (Part1): Eclipse 3.5 を見ていくよ!(その1)

最近Eclipse.orgにアクセスしたことのある方はヘッダーが「Galileo(筆記体読めない><) ARRIVES IN TWO WEEKS」となっていることに気づかれた方もいるかもしれません。そうです。Eclipse 3.5のリリースは6/24。あと2週間を切りました。自分は主にPlug-in/RCPの開発者なので、その視点で、いいと思っている点をレポートしていきます。なお、Eclipse 3.5の新機能はリンク先参照してください。

P2が標準に


Ganymedeがリリースされたときに初めて導入されたP2によって、フィーチャーの管理方法が大幅に変更されました。それから一年。機能的にこなれてきたため、標準になりました。それに伴い、今までのplug-inの更新サイトから、インストールできなくなっているかもしれません。*1またまたフィーチャの管理画面ががらりと変わっています。今まではいまいちうまく動作していたのかよくわからなかった依存しているプラグインの自動ダウンロードも、うまく機能しているように見えます。*2


EclipseのプラグインやRCPを開発する時、あらかじめアプリケーションで必須となるプラグインを用意したEclipseを用意しておいて、開発の環境構築を楽にしていました。しかし、これからは必要なフィーチャーを列挙したサイトを用意するだけでよくなります。開発を始めるときにTarget Platformに作成したSoftware siteを指定すると、必要なフィーチャーを自動的に探してきてローカルにインストールし、開発環境を作成してくれるらしいです。

OSGiのDeclarative Serviceの導入


Spring-DMでもBundle間のサービスの注入が実現されていましたが、OSGiで同様の仕様として提言されていたDeclarative Serviceが本格的にEquinoxへ導入されます。OSGiコンテナであるEquinoxは元々、Activatorを使ってDIっぽい挙動を制御する事ができましたが、Declarative Service(通称:OSGi DS)を使うことにより、XMLで宣言的に依存しているサービスを注入することができるようになります。

JUnit 4.5サポート

ここ数年、JUnitが急激に成長にしていますが、自分、ついていけませんでした。assertThatとか、聞いたことあっても使ったことのない構文ばかりです。それはなぜかと言うと、Eclipseに添付されているJUnitが4.3だったため、hamcrest同梱前だったのです。自前で環境構築するのもありだったんですが、ちょっとそこまで手を出していませんでした。3.5からは標準でついているし、比較とかのテストを読みやすい形で書けるので、積極的に使っていきます。

toString()の自動生成サポート


プラグインを追加すればサポートされていたtoString()の自動生成ですが、3.5から正式にサポートとなったようです。今までなかったのかどうか定かじゃないですが、こういう機能は便利です。

メニュー項目についての情報を表示するPlug-in Spyが追加されています。


Alt+Shift+F1でアクティブなビュー、エディタ、ダイアログ等の情報をポップアップで表示してくれていましたが、Alt+Shift+F2を押すとメニュー項目についての情報を表示してくれるPlug-in Spyが追加されています。メニューの指定方法ですが、Alt+Shift+F2を押すと、虫眼鏡カーソルになるので、ツールバーやメニューを選択すると関係する情報が表示されます。これ、どうやって実現してんだ?っとplugin.xmlを徘徊する回数が減るはずです。

WikiTextEditorの導入

昨年12月にリリースされていたMylyn 3.1から導入していたWikiTextEditorがEclipseプラットフォームにも正式採用です。*.tracwikiとか拡張子つけるとTracWiki形式でHTMLなどがかけるエディタが出現します。TracWiki以外にもTWikiや、Textile等の文法がサポートされています。
このWikiTextEditorのいいところはHTML形式のエクスポート以外にもEclipse Help形式や、DocBook形式でのエクスポートもサポートされているところ。これまでEclipseは標準でEclipse Helpを記述するにはHTMLをガリガリ書くことが多かったのが、幾分楽になることでしょう。*3

なおこのエントリーはBlogathon for the Eclipse Galileo Releaseにエントリーしてます。このBlogathonで優勝するとなんと、EclipseCon 2010か、Eclipse Summit Europe 2009のフルパスをゲットできます。(飛行機代等除く)それ以外にも上位3人の方にはジャケットがもらえたり、参加賞としてFriends of Eclipse(優先ダウンロード権)やT-Shirtsをもらえます。参加方法ですがGalileoに関するレビューを書き、[galileo-reviews@eclipse.org]にメールを送るとエントリーすることができます。日本語で書いていますが、なんの言語でもいいです。中にはインドネシア語で書かれているブログもあります。読んでみたら、

とか、聞いたことのないプロジェクトが書かれていました。おい、Javaのワークフローサポートとか。締め切りは7/31までなので、Galileoを使ってみた印象をぜひエントリーに書いてみてくだし。

*1:Quick JUnitは一時期それでインストールができずに悩んだことがありました。

*2:ただし、ダウンロードにやたら時間がかかっているように見えるので、パッケージを落としてインストールしなおしたほうがよいように見える。

*3:自分はWTPを入れていなかったので。