Hatena::ブログ(Diary)

Startup Reality

2011-03-31

MacにEclipse+PydevでGoogle App Engine for Pythonの開発環境を作ってHello Worldを動かす

うってかわって技術ネタです。というか作業メモです。

開発にエディタGoogle App Engine SDK for Pythonしか使ってこなかったCrowyですが、会社でサービスすることになり、@hrendohがRedmineとSVN立ててくれたので、その辺と連携しやすいので、慣れているEclipseでCrowyも開発してみようかと思い立ちました。

Macbook AirEclipse+PydevでGoogle App Engine for Pythonの開発環境を作ってHello Worldを動かすところまでやったので、手順をメモしておきます。


Google App Engine SDK for Pythonインストール

http://code.google.com/intl/ja/appengine/downloads.html からダウンロードしてインストールしてください。

Python 2.5もインストールしてください。

この辺は元々入っていて、今回やってないので書きません。適当に入れてください。

Eclipseダウンロードしてインストール

ここはみんな書いているのでいいです。http://www.eclipse.org/downloads/ から好きなのインストールしてください。

軽い方がいいし、Crowy開発にはJavaScriptPythonしかいらないので、僕は「Eclipse IDE for JavaScript Web Developers」にしていみましたよ。これは初めてインストールする。

Pydevをインストール

[Help]-[Install New Software..]を開き、[Work with:]に"http://pydev.org/updates"と入力。

f:id:a_kimura:20110331173054p:image

Pydevにチェックを入れて、[Next >]をクリック。指示に従ってインストール

GAEライブラリを展開しておく

Pydevでプロジェクトを作成するときにGAEライブラリを要求されます。zipファイルに入っているので、解凍します。

$ cd /Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources
$ unzip google_appengine.zip

GAEライブラリ構成が最近変わって、1.4.2?からDjango 1.2をサポートするようになりましたが、まだPydevはこの構成に対応していないようです。

以下のように使用するDjangoのバージョンにエイリアスを切っておきましょう。これをやっておかないとプロジェクト作成のところでエラーが出ます。

$ cd /Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib
$ ln -s django_0_96/ django

Crowyはまだ0.96を使っています。変更しないと・・・

Google App Engineのプロジェクトを作る

[File]-[New]-[Project...]で[Pydev]-[Pydev Google App Engine Project]を選ぶ。

f:id:a_kimura:20110331183103p:image

"Please configure an interpreter..."と表示されるので、そこをクリック。

f:id:a_kimura:20110331201527p:image

[New]をクリックして、"/usr/bin/python"を追加。

f:id:a_kimura:20110331183332p:image

[Grammer Version]を忘れず、"2.5"にする。

f:id:a_kimura:20110331201637p:image

[Google App Engine Directory]に"/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine"を指定する。

f:id:a_kimura:20110331183648p:image

[Next]で、GAEアプリケーションIDとテンプレートを選択します。"gae_hello"、"Hello Webapp World"を選択してみます。とりあえずローカルで動かすので、アプリケーションIDはなんでもいいです。

f:id:a_kimura:20110331201929p:image

できました。

f:id:a_kimura:20110331202012p:image

動作確認

動かしてみます。

Google App Engine Launcherを起動して、左下の[+]ボタンを押し、表示されたダイアログでApplication Directoryに先ほど作ったプロジェクトのsrcディレクトリを指定します。

私の場合は"/Users/a_kimura/Documents/eclipse/workspace/gae_hello/src"です。Application Nameは記述しなくてよいです。

f:id:a_kimura:20110331202148p:image

で、Runを押します。アプリケーションIDの左に再生アイコンが表示されれば、正常に起動できたことになります。

f:id:a_kimura:20110331202221p:image

"http://localhost:8080/"にアクセスすると、"Hello, webapp World!"と表示されます。ちゃんと動きました。ポートはアプリケーション追加で指定したポートです。8080ではないかもしれないので、注意してください。

f:id:a_kimura:20110331202415p:image

初めて使うので便利かはわかりませんが、ちょっとこの環境でCrowyの開発を進めてみようと思います。