Google App EngineのJavaサポートがもたらしたもの

Google App EngineがJava言語をサポートしたことで、JavaだけでなくGroovyやJRuby、Rhino(JavaScript)といったJavaVM上で動作するスクリプト言語をGoogle App Engine上で動作させようという試みが行われている。すでにGrailsやRuby on Railsなどのフレームワークも動作しているようだ。

様々なスクリプト言語の中でも特に多くのWeb開発者が使用しているのがPHPだ。PHPのJava実装としてはCaucho Technologiesで開発されているQuercusがある。これはもともとアプリケーションサーバResinでPHPを動作させるために開発されたものだ。

本稿ではMoriyoshi Koizumi氏がGitHubで公開しているquercus-gaeを使用して実際にGoogle App Engine上でPHPを動かす手順を紹介する。なお、Google App Engine for Javaでのアプリケーション開発手法についてはこちらの記事を参照してほしい。

quercus-gaeのビルド

まずはquercus-gaeのソースを取得してビルドを行う。quercus-gaeのビルドにはgitとmaven2が必要になる。Windows上でgitを使うにはCygwinを利用するのが手っ取り早い。コマンドラインから以下のように入力してGitリポジトリをクローンする。

> git clone git://github.com/moriyoshi/quercus-gae.git

QuercusのビルドにはJavaMail 1.4.2が必要となるが、ライセンスの問題からMavenのセントラルリポジトリでは提供されていないため、http://java.sun.com/products/javamail/downloads/から別途ダウンロードしてMavenのローカルリポジトリにインストールしておく必要がある。

Mavenのローカルリポジトリへのインストールは以下のコマンドで行う。

> mvn install:install-file -Dfile=mail.jar -DgroupId=javamail -DartifactId=javamail -Dversion=1.4.2 -Dpackaging=jar

続いて先ほどgitコマンドで取得したquercus-gaeソースコードのルートディレクトリで以下のコマンドを実行し、quercus-gaeのビルドを行う。

> mvn package

成功すればtargetディレクトリの下にQuercus-GAE-1.0-SNAPSHOT.jarというJARファイルができているはずだ。