2012年07月06日

EclipseからGAE/Goの開発を行う方法

google app engine の開発言語に Go言語が加わったり,Go言語用のIDEが色々と発表されたりと,Go言語での開発環境が整ってきました。
ここでは,Eclipseを用いてGAE/Goの開発を行う方法を説明します。
以下,Mac OS X で Eclipse Juno の英語版を用いて説明しますが,別の環境の人は適宜読み替えてください。

・準備
Eclipseのインストール
Google App Engine SDK for Go のインストール

準備として,この二つをインストールしておきましょう。
説明は割愛しますが,インストール方法はぐぐれば適当に出てくると思います。


・GoClipseのインストール
GoClipse とはEclipse 用の Go言語プラグインです。
まだ開発途中という感じですが,アウトライン表示やコード補完が行えますので,使えばGo言語での開発がぐっと楽になります。
現在のバージョンは 0.7.2 が最新のようです。
公式サイト
http://code.google.com/p/goclipse/

それでは,Eclipse に GoClipse をインストールします。

Eclipse を立ち上げて,メニューの Help から Install New Software... を選択します。

Work with: に
http://goclipse.googlecode.com/svn/trunk/goclipse-update-site/
を入力してenterキーを押下します。
GoClipse にチェックを入れて Next ボタンを押します。
以下は画面の指示に従ってインストール 〜 再起動までを行ってください。

※ Workspace について:
GoClipse の環境設定は,GAE/Go と,それ以外に普通にGo言語開発する場合と設定が違いますので,普通にGo言語開発も行う場合はWorkspace を別にわけておくとよいでしょう。

さて,Eclipse が再起動したら,GoClipse の設定を行います。
環境設定から Go を選択します。
GOROOT path に 「app engine SDK のインストール先/google_appengine/goroot」 を設定して,
OKボタンを押します。

スクリーンショット 2012-07-06 21.30.33.png

これでインストールは完了です。

・GAE/Go のプロジェクト作成

早速プロジェクトを作成しましょう。
Eclipse のメニュー File → New から Go Project を選択してNextボタンを押します。

スクリーンショット 2012-07-06 21.35.19.png

適当に Project name: を設定。ここでは gaegotest を入れて Finishボタンを押します。

スクリーンショット 2012-07-06 21.36.30.png

このようにプロジェクトが作成されます。

pkg フォルダの下にパッケージ用フォルダを作成します。
その下にGo言語のソースファイルを作成しますが,慣例的に,Go言語ではフォルダ名=パッケージ名としますので,それっぽい名前にしておくと良いでしょう。
ここでは hello としておきます。

bin,src,darwin_amd64 などのフォルダはGAE/Go には不要なので消しても問題なさそうです。
※darwin_amd64 はMac環境のみで,他のOSの場合OSに合わせたフォルダが出来ていると思います。

Go言語のソースファイルを作成します。
hello フォルダを右クリックして New → Go File を選択します。
ファイル名は適当で良いですが,ここでは main.go とします。
ファイル名を入力後 Source File Type に Package Source File を選んで Finishボタンを押します。

スクリーンショット 2012-07-06 22.03.49.png

Go のソースファイルが出来ました。
中身にはとりあえずGAE公式サイトから helloworld を丸コピーしましょう。
https://developers.google.com/appengine/docs/go/gettingstarted/helloworld

スクリーンショット 2012-07-06 22.06.45.png

これで右ペインにアウトラインが表示されています。
コード補完も効きますので,ソース中に適当に fmt. とか http. とか打ってみてください。
IDEは最高ですね。ヒャッハー ι(`ロ´)ノ


次に,GAE/Goに必要なファイル app.yaml を作成します。
pkg を右クリックして new → File を選択します。
File name に app.yaml と入力してFinishボタンを押します。

スクリーンショット 2012-07-06 22.12.17.png

app.yaml の内容は先ほどの公式サイトから,また丸コピーしましょう。

application: は実際にデプロイするときには,GAEサーバに作成したアプリ名になります。
が,ローカルでテストするときには適当で良いです。

スクリーンショット 2012-07-06 22.13.26.png

※ここで注意:
version: などの : の後にはスペースが必要です。
スペースが無いと,実行しようとするとよくわからないエラーが出てはまるので注意しましょう。
ええ,めっちゃはまります。

これでひと通り準備が出来ました。
シェルで, gaegotest のフォルダにフォルダ移動し,以下のようにコマンドを実行するとテスト用のAPPサーバが立ち上がります。

>dev_appserver.py pkg/

スクリーンショット 2012-07-06 22.20.04.png

ブラウザから http://localhost:8080/ にアクセスして Hello, world! と表示されれば成功です。

ローカルテストをするのにシェルからコマンドを実行するのが面倒くさい場合は,Eclipse のExternal Tools から実行することも可能です。

設定するには,Eclipse のツールバーで External Tools アイコン右の 小さな三角形をクリックし,External Tools Configukations を選択します。

スクリーンショット 2012-07-06 22.23.35.png

Program をダブルクリックし, New_configuration を作成します。

Name: に適当に名前を入力,例えばGAEGo Run
Location: に dev_appserver.py を指定。Browse File System ボタンを使うとよいでしょう。
Working Diretory:  に ${project_loc}/pkg と入力します。
Arguments: に 「.」 分かりにくいですが, ピリオドを設定しています。

スクリーンショット 2012-07-06 22.29.41.png

これで External Tools ボタンでローカル実行出来るようになります。
私がEclipseにあまり詳しくなので,他にもっと良い設定方法があるかもしれません。
ご存じの方はぜひお教えください。

現状,dev_appserver.py のオプション指定やデプロイはシェルからがやり易いので,シェルから行ったほうが良いと思います。

次回,実践編に続く(たぶん,一年後くらいに)
ラベル:GAE/Go Go言語
posted by ちいといつ at 23:30| Comment(0) | プログラミング | このブログの読者になる | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。


×

この広告は1年以上新しい記事の投稿がないブログに表示されております。