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ファイルができているはずだ。