Perl + Catalyst + Eclipse環境のインストール

大変お久しぶりです。
ちょっと最近思い立ち、LAMP環境でも本格的に勉強してみようと思い動き出したので勉強メモを残しておきます。
Amazonのウェブサービスなどの大手Web企業のPaaSもあるようだが、そんなに安定的にサービスを動かす必要もないので、格安レンタルサーバーに最終的な環境はデプロイすることにする。
開発の初期にリモートのサーバーにいちいちデプロイをするのも面倒なので、一旦は検証用環境をクライアントに置くことにする。VMWareを入れて、そこにLinuxを入れて構築しても良いのだがいちいちVMWareを起動するのもおっくうな気がする。
ということでまずはWindows環境にApachePerlを入れて、Eclipseで開発できないか調べてみる。
Perlなんて簡単なログ整形程度にしか使ったことがなかったので、PerlだけでWebアプリと聞いても全然ピンとこなかったのだが、CatalystというMVCフレームワークがあるそうな。
第4回 Catalyst(前編)---Perl向けWebアプリ・フレームワーク - 簡単実装で学ぶWeb技術:ITpro
初めてのCatalyst入門(1) PerlによるWebフレームワークCatalystとは?(1/5):CodeZine
で、Eclipseで開発するためにはEPICなるプラグインを入れれば良いらしい。
スクリプト言語をサポートするEclipseプラグイン - @IT

というわけで早速インストール開始。まずはEclipsePerlCatalystは下記のActive Perlインストール後にPackage Managerなるものを立ち上げてから入れるらしい。

Eclipse for PHP Developers

ActivePerl Downloads - Perl Binaries for Windows, Linux and Mac ...
バージョンはそれぞれ下記の通り。

Eclipse:
3.6.1.r361
ActivePerl:5.12.2.1203

Eclipseはシンプルなやつでも良かったが、なんとなくPHPがバンドルされているやつにしてみた。
Windowsなのでインストールは楽々。
両方ともインストーラを起動して順調にインストール。
Eclipseのプラグインも、起動後にHelp -> Install New Softwareから下記のサイトをリポジトリに指定してインストール完了。

http://e-p-i-c.sourceforge.net/updates/

さて、これでEclipsePerlは入った。
次にCatalystCodezineの解説によると、Perl Package Managerを開くと一覧に登録されているはずであるが、無い。ぐぐってみるとこんなものが。

[perlメモ]perlのフレームワークCatalystで遊んでみる その1 - KUMA TYPE


なるほど。リポジトリが足りなかったのか。というわけでCPANURIリポジトリに登録。
Catalyst::Manual::Installation
Perl Package Managerの中にCatalyst-Develが登場。インストールしてみる。依存しているパッケージが57個もあるらしい。全部まとめてインストールしてくれるようなので楽ちん楽ちん。
C:\の直下のコマンドプロンプトでサンプル用にHelloプロジェクトを作ってみる。

C:\ catalyst.pl Hello

しかし何やらエラーが出る。何かの依存関係がしくっているような感じ。ぐぐってみても詳細が出てこなかったため、ActivePerlごと一旦アンインストールして5.8.9.828をインストールし直す。
そしたら今度は無事にCatalystのサンプルアプリケーション作成完了。hello_server.plを動かしてサーバーを起動。

C:\Hello\script\hello_server.pl

下記URLにアクセス。

http://localhost:3000/

無事にサンプルページが表示された。簡単だ!
最後に作成したプロジェクトをEclipseに入れてみる。
EclipseでFile -> New -> ProjectでPerl Projectを指定して、プロジェクト名をHello、パスをHelloプロジェクトのルートフォルダに指定してFinishを押すとちゃんとインポートされた。
サーバーの起動も、Run -> Run ConfigurationsでRun Configurationウィンドウを立ち上げて、Perl Localで右クリック -> newで新しいConfiguraitonを作る。MainタブのProjectにHelloプロジェクトを指定して、File to Executeにscript/hello_server.plを設定すればすぐに起動できる。
ただ、サーバーが起動している間にソースコードを書き換えて保存してもサーバーを再起動させないと反映されない…。何か方法があるのかもしれないけどとりあえずはこれでOK。
次回以降はPerlで勉強した内容についてぼちぼち書いていこうかなと思っています。