以下の一行を追記します。
-javaagent:/usr/lib/eclipse/plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar
このプラグインはスプラッシュスクリーンを素敵な画像に差し替えることもできます。その場合は、先の設定ファイル「/etc/eclipse.ini」から以下の行を削除します。
-showsplash
org.eclipse.platform
図3 pleiadesのスプラッシュスクリーン
もうひとつは、Eclipseの操作画面から新規ソフトウェアのインストール機能を利用する方法です。こちらはEclipseにおいて標準的な方法で、オペレーティングシステムを問わず同じ方法となりますが、Ubuntuの場合、パッケージが提供されていない拡張、例えばWTP(Web Developer Tools)やPDT(PHP Development Tools) 、Subversiveはこの方法で適用します。また、Lucid以前のRemote System Explorerもこちらの方法となります。この場合、Eclipseに「update-site」と呼ばれるリポジトリーを登録し、そこから拡張をインストールすることになります。
拡張をインストールするには、メニューバーから「ヘルプ」 、「 新規ソフトウェアのインストール」と進みます。ウィンドウが新たに開きます。プルダウンリスト「作業対象」から適当なソフトウェア・サイトを選択します。しばらく待つと、適用可能な拡張の候補が表示されます。
図4 新規ソフトウェアのインストール画面。大抵の拡張は登録されているGalileo Update Site からインストールできる
もし希望する拡張がない場合は、プルダウンリストの下の「使用可能なソフトウェア・サイト」というリンクをクリックします。そうすると別なダイアログが開きます。ここで、すでに登録しているupdate-siteのロケーションを使用可能にしたり、新規に登録したりすることができます。
図5 使用可能なソフトウェア画面。ソフトウェア・サイトの追加・編集・除去などの操作ができる
インストール機能で適用できる拡張機能(リンクはupdate-siteのURL):
ワークスペース、ワークベンチ、ビュー、プロジェクト、パースペクティブ
ワークスペースやワークベンチ、ビュー、プロジェクト、パースペクティブはEclipseの用語ですので、実際にEclipseを操作しながらひとつひとつ説明します。
UbuntuのメニューからEclipseを選択して起動すると、まずワークスペースの選択を促されます。ワークスペースとはEclipseで作成するプロジェクトの置き場です。大抵はユーザのホームディレクトリの、たとえば「/home/mocchi/workspace」のようなディレクトリとなるでしょう。Eclipseで作成したファイルはすべてここに保存されるため、それなりのサイズが確保できるディレクトリを指定してください。
図6 ワークスペース選択ダイアログ。登録したワークスペースは、Eclipseの設定から項目「一般」 、「 開始およびシャットダウン」 、「 ワークスペース」で管理することができる
ワークスペースを選択すると、Eclipseのメイン画面である「ワークベンチ」となります。ワークベンチにはさまざまな「ビュー」が配置されています。ビューはそれぞれ異なる役割を持っています。
ワークベンチの右上で「パースペクティブ」を選択できます。パースペクティブを変更することで、ワークベンチを特定の用途に適したものに切り替えます。例えば「C/C++」を選択するとコンパイル・デバッグ、Makeターゲットといったビューを備えたワークベンチに切り替わり、「 SVNリポジトリーエクスプローラー」を選択すると登録しているSVNリポジトリーの内容や更新履歴を参照するビューを備えたワークベンチに切り替わります。
図7 パースペクティブはワークベンチの右上に表示される
図8 パースペクティブ選択ダイアログから追加することができる
使いたいパースペクティブを選択したら、プロジェクトを作成します。「 エクスプローラー」ビューでマウスの右クリック・メニューを表示し、新規を選択します。メニューに従って操作します。
図9 プロジェクトの作成画面。「 PHP」パースペクティブ上のビューからメニューを表示している
「エクスプローラー」ビューはたいていワークベンチの左に配置されていますが、メニューの「ウィンドウ」から「ビューの表示」と進むことで、ビューを自力で開くことも可能です。パースペクティブによってはエクスプローラー・ビューでリポジトリーへの接続を作ったり、あるいはリモートファイルへの接続を作ったりと用途が異なるので、注意してください。
目的のパースペクティブのプロジェクトを作成したら、いよいよ作業開始です。
SVNリポジトリーの利用
SVNとは、ソースコードのバージョン管理をするための仕組みです。今回は筆者がリードしているNucleus CMS日本語版パッケージがホスティングしている、sourceforge.jpのリポジトリー を利用してみます。
まずパースペクティブを「SVNリポジトリー・エクスプローラー」に切り替えます。ワークベンチ左の「SVNリポジトリー」ビューで右クリックをし、「 新規」 、「 リポジトリー・ロケーション」と進み、「 新規リポジトリー・ロケーション」ダイアログが開きます。
図10 新規リポジトリー・ロケーションの登録ウィンドウ
タブ「一般」のテキストボックス「URL」に、nucleus-jpのプロジェクトURL「http://svn.sourceforge.jp/svnroot/nucleus-jp」を入力します。
有効なURLが入力されると、テキストボックス右のボタン「参照」をクリックしてリポジトリーの中を見ることができます。
図11 新規ルートURLの選択画面。nucleus-jpリポジトリーの中を閲覧できている
http接続であれば認証は不要ですので、登録したい階層を選択し、OKを押してダイアログを閉じます。最初に開いたダイアログのテキストボックス「カスタム・ラベル」で表示名を入力し完了をクリックすると、このリポジトリーが登録されます。
リポジトリーからチェックアウトするには、「 SVNリポジトリー」ビューで右クリックして表示されるメニューから、項目「チェックアウト」を選択します。そうすると、ソースがすべてプロジェクトとしてワークスペースにコピーされます。
図12 「 SVNリポジトリー・エクスプローラー」ビューに登録されたリポジトリーで表示したメニュー。チェックアウトやリポジトリーの再設定を行うことができる
Nucleus CMSはPHPプロジェクトなので、PHPパースペクティブでプロジェクトを見てみましょう。プロジェクトとしてローカルに保存された後も、履歴などは維持されるため、「 エクスプローラー」ビューでファイルやディレクトリのリビジョンを確認することができます。またSVNリポジトリーのリソースが更新された場合も通知されます。
「PHPエクスプローラ」ビューで右クリックをすると、項目「チーム」が表示されます。ローカルファイルをリポジトリーのファイルに同期させたり、更新履歴を表示したり、バージョン情報を含まない形でエクスポートすることができます。
図13 PHPパースペクティブにおいて、リポジトリーからチェックアウトしたプロジェクトを表示した画面。「 チーム」メニューでSVNリポジトリー関係の操作を行うことができる
筆者はこのプロジェクトのコミット権限を持っているため、ローカルファイルの内容をリポジトリーに反映する操作(コミット)が許可されています。認証方法はhttp/httpsによる方法、パスワードあるいは認証鍵によるSSH認証、SSL証明書による認証などが利用できますが、sourceforge.jpへ登録作業を行いかつプロジェクト管理者に依頼して開発者登録を行う必要があります。
筆者はこのようにして、プロジェクトメンバーと協力してバグ修正やマルチバイト文字処理の実装に取り組んでいます。
FTP/SFTP/SSH接続による外部サーバの利用
Nucleus CMS日本語版コミュニティではウェブサイトを運用しており、筆者はここのサービス管理もちょこちょこ手伝っています。ここでも、Eclipseが大活躍してくれます。
RSE(Remote System Explorer)は、FTP/SFTP/SSHなどでサーバに接続して、リソースに手を加えるための拡張です。RSEのインストール方法はLucid以前とMaverick以降で異なります。Lucid以前ではEclipseのupdate-siteから「リモート・システム・エクスプローラー・エンドユーザー・ランタイム」を、Maverick以降はSynapticパッケージマネジャーなどでパッケージ「eclipse-rse」をインストールすることになります。RSEをインストールしたら、ワークベンチでパースペクティブ「リモート・システム・エクスプローラー」を選択できるようになります。
接続を作成するには、ワークベンチ左の「リモート・システム」ビューで右クリックし、項目「新規接続」をクリックします。ダイアログに従ってサーバの情報を登録します。うまく登録できると、画面のように「リモート・システム」ビューに接続が作成されます[2] 。
十分な権限があれば、RSEのターミナル機能を使ってSSH接続でログインし、サーバをコマンドラインから操作することもできます。
図14 リモートシステム・エクスプローラーの画面。筆者の自宅サーバ上(192.168.1.200)のリソースを参照している
[2] なお、FTP接続は初期状態では利用できないので、「 使用可能なソフトウェア」ダイアログで「Remote System Explorer User Actions」で表示される拡張をインストールしてください。
HTTPサーバ機能とパッケージ
ここから先はEclipseから少し離れた話題となります。
Nucleus CMSを開発するにはこれまで説明した以外に、HTTPサーバに相当する環境も整える必要があります。すなわちApache2に代表されるHTTPサーバとPHPのランタイム、MySQLサーバをインストールする必要があります。
Apache Friends プロジェクトでは、これらをまとめたXAMPPというソフトウェアのLinux用バイナリを提供しています。筆者はUbuntuを使い始めた当初はこちらを利用していました。しかしパッケージ管理システムの便益に気づいた現在は、Ubuntuのリポジトリーで提供しているApache2、MySQL、PHPの各パッケージを利用しています。
これらソフトウェアは、パッケージ「php5-mysql」をインストールすると依存関係ですべてが整います[3] 。Apache2のドキュメントルートはパス「/var/www」 、MySQLのルートアカウントはインストール時に決定を促されます。
さらにUbuntuでは、PHPMyAdmin のパッケージ「phpmyadmin」も提供されており、Nucleus CMSの開発に必要なものがほとんど提供されています。
また、作業用デスクトップ(Ubuntu Studio)と開発用サーバ(Ubuntu Server Edition)というように環境を分けることで、デスクトップの環境が開発環境に影響を及ぼさないようにしています。以前はすべての環境を一つのコンピュータに集めて作業していたのですが、操作のミスで開発用コードをすべて失った ことがあってからは、このようにして事故を防いでいます。
筆者がUbuntuを使い始めたのは、そもそも、Nucleus CMSの開発環境を整えるコストが低いというのがきっかけでした。その割にこの連載ではマルチメディア編集環境に特化して執筆しているんですが、それはたぶん、Linuxの世界の広大さにやられたからなのでしょう。
音楽編集したり、映像編集したり、お絵描きしたり、アニメーションを作成したり、3Dモデルとキャッキャウフフしたりと、Linuxには開発以外にも使い方の切り口がたくさんあります。新生活を始めたみなさんにとって、Ubuntuが新たな遊び道具となれば楽しくて素敵なことだと思います。