Pythonの開発環境にいいものが無いかと調べたところ、「PyDev」というEclipseプラグインがあることを知りました。
現実逃避も兼ねて調査してみました。
環境
今回はEclipse3.3.1.1を用意しました。
またPython2.5を事前にインストールしておきました。
インストール
プラグインサイトを用意してくれているので、Help>Software Update>Find an install..>Search for new features to install>New Remote Site..で
Name:PyDev URL:http://pydev.sourceforge.net/updates
とすればインストールできます。
初期設定
必要な初期設定は、python.exeの場所の設定だけです。
Window>Preference>Pydev>Interpreter -Python を選んで、New..ボタンからpython.exeの場所を設定します。
WindowsにPythonをデフォルトインストールすると、c:\Python25\python.exeになると思います。
プロジェクト作成
正しくインストールされていれば、Pydevパースペクティブが選択できます。
Javaと同じく、File>New>Pydev Projectを選択します。
プロジェクト名やPythonのバージョンを選べば、プロジェクトが出来ます。
GoogleAppEngineの開発環境
まず、GoogleAppEngineを入手します。
http://appengine.google.com/
インストールすると、C:\Program Files\Google\google_appengine(Windowsの場合)にひとしきりインストールされています。
ここのディレクトリから
google lib templetes appcfg.py dev_appserver.py VERSION
のファイルとフォルダを、先ほど作成したプロジェクト直下にコピーします。
次に、GoogleAppEngineで登録してある名前と同じ名前のフォルダをプロジェクト直下に作成し、それをソースフォルダにします。
(つまり、普通にSDKを使うとの同じフォルダ構成にする)
例えば、fooというアプリをgoogleに登録してある場合、
FooProject <--プロジェクト |--foo <--ソースフォルダ | |-foo.py | |-app.yml | |-index.yaml | |--google |--lib |--templates |--appcfg.py |--dev_appserver.py |--VERSION
という構成になります。
実行
dev_appserver.pyがサーバ起動用ファイルなので、右クリック>Run As>Python Run とします。
これで実行できるのですが、はじめはエラーで落ちると思います。これは起動引数(アプリ名)が足りないためです。
したがって、起動引数を設定します。
右クリック>Run As>Open Run Dialog..で実行ダイアログを開き、ArgumentsタブのProgram arguemntsのところにアプリ名(この場合foo)を入れて実行します。
またこれがめんどくさい場合は、dev_appserver.pyを直接編集します。
ファイルを開き、下のほうにある
if __name__ == '__main__': sys.path = EXTRA_PATHS + sys.path script_path = os.path.join(DIR_PATH, DEV_APPSERVER_PATH) execfile(script_path, globals())
というところに、「sys.argv.append("foo") 」の行を足します。
if __name__ == '__main__': sys.path = EXTRA_PATHS + sys.path script_path = os.path.join(DIR_PATH, DEV_APPSERVER_PATH) sys.argv.append("foo") execfile(script_path, globals())
起動引数を増やしたい場合は、同じやり方で足して行けばいけると思います。
実行後、ブラウザでhttp://localhost:8080にアクセスすれば、app.ymlのscriptに記述してあるスクリプトが実行されます。