Pulseを使ってEclipseの設定を共有すると便利(ただし、閉鎖環境では使えません)

Eclipseのワークスペース設定を共有することは難しい

EclipseはJavaの開発では最も人気の高いIDEであり、もちろん、私も仕事でも自宅でもずっとメインのIDEとして使ってきました。もちろん、NetBeansやIDEAなど他の優秀なIDEもフリーで利用できる時代なのですが、やはり、入力支援機構やリファクタリング機能の豊富さについては、やはり、Eclipseが他と比べて一歩優れているように思われます。*1
そして、Eclipseの最大の特徴の一つは柔軟なプラグインのアーキテクチャであり、豊富なプラグインの中から選択して好みの機能を拡張することができます。ただし、これはEclipseの最大のメリットでもあるのですが、大量のプラグインを管理して複数の端末で効率的に共有するということは案外大変なことでした。
Pleiadesのオールインワンパッケージを利用したり、また、SpringやJBossなど特定のフレームワークを対象にする場合は、Spring Tool SuiteやJBoss Toolsなどを利用することで、有用なプラグインをまとめてインストールできます。これである程度問題は軽減されるとはいえ、結局

  • 足りない機能に対して独自にプラグインを追加
  • 起動パラメーターやフォーマットなどワークスペースレベルの設定をカスタマイズ
  • Java用、PHP用、Ruby用など複数の言語環境を使い分ける

などを行った場合、これらのカスタマイズした環境を複数のPC上で共有し、きちんとバージョンアップにも対応するような運用することはかなり面倒です。つまり、プロジェクトごとの設定情報はSVNなどの構成管理ツールを使って簡単に共有できるのですが、プロジェクトをまたがったワークペースレベルの設定を共有することが、簡単そうでいて実は難しいということがありました。
このような問題の一つの解決策はDropboxなどの共有サービスを使って、Eclipseの構成情報を共有することですが、それでもカスタマイズした複数の環境を管理することは容易ではありません。

Pulseを使ってどこからでもEclipseの設定を共有する

そのような問題を解決する手段として、Pulseというツールを利用すると非常に便利です。実は、私はかなり最近になって知ったのですが、実は、数年前から存在するようですね。MyEclipseという有償のEclipseのオールインパッケージを作っている会社が提供しています。
Pulseは個人で利用するだけであれば、以下からCommunity Editionを無償でダウンロードして使うことができます。
IDE Management by Secure Delivery Center - Genuitec
使い方はものすごく簡単です。まず、Windows、Mac、Linux用のバイナリが提供されているので自分のプラットフォームに合ったインストーラーを使ってインストールします。次に、以下のサイトであらかじめユーザー登録をしておくか、
IDE Management by Secure Delivery Center - Genuitec 
あるいは、Pulseの初期起動画面でRegisterを選択しユーザー登録を行います。

ユーザー登録時に使用したメールアドレス宛てに確認のメールが届くので、リンクをクリックして登録確認を行います。ユーザー登録が正しくできていれば、ログイン画面でログインすることで、以下のPulse Explorerの画面が開きます。

最初にPulse Explorerを起動した段階では、あらかじめ一覧から選択可能なEclipseの構成が表示されるだけですが、My Profilesのペインに好みの構成をドラッグすることで、独自のプロファイルを好きなだけ追加することができます。追加したプロファイルに対しては、以下の画面で好みのプラグインを追加することができます。

もちろん、新規のUpdateサイトを登録することで、予め登録されていないUpdateサイトのプラグインを追加することもできます。
そして、Install Nowのボタンをクリックすることで、実際にローカルにEclipseがダウンロードされてインストールされます。さらに、便利なことに、インストール後にプラグインの構成だけでなく、エディタのフォーマットなどワークスペースの設定情報をあわせて管理することができます。そのためには、以下のようにCollaborationタブをクリックし、Let Me At ItボタンをクリックしてTeam of One機能を有効化します。

Pulseは複数のプラットフォームに対応していますし、自分の使う複数のPC上にインストールしておけば、クラウド上に設定情報を共有することでどこでも同一の環境を利用することができるようになります。

有償版を使うとチーム間での共有も可能

さらに、月6$、年間60$を支払ってTeam Editionを購入することで、チームメンバー間でカスタマイズした設定を共有することも可能です。ちょっと高いと感じられるかもしれませんが、メンバー間で同一の環境を共有して同期させる手間を考えれば、むしろリーズナブルな価格設定と言えるかもしれません。
確かに、Eclipseの環境構築は面倒なのですが、このようなところに目を付けてビジネスにしてしまう発想には感心させられます。他には、EclipseSourceというEclipseを専門でビジネスをしている会社もあるようですが、オープンソースがビジネスになってしまう外国はちょっとすごいと思います。
それから、当然ですがこのような便利なツールも、インターネット接続が遮断されたいわゆる閉鎖環境では使うことができません。*2実際、閉鎖環境では外部からの情報が遮断されていることもあり、いまだにEclipse3.3などの太古の化石のようなバージョンが現役で使われているプロジェクトも存在するようです。セキュリティ面からやむを得ないところはあるとはいえ、そのような環境ではどんどん時代の最先端から取り残されていくというのは否定できませんね。

*1:個人的な慣れの問題が大きいことも確かなのですが。

*2:ただし、Private Labelと呼ばれるエンタープライズ向けのソリューションも提供されており、そのバージョンであれば閉鎖環境でも運用できるようです。Eclipseに限らず、アプリケーションを配信するメカニズムとして利用できるようですね。