IntelliJではじめるPlayframework

これまでPlayframeworkプロジェクトを作成するときは、

% play create new-app
% cd new-app
% play eclipse
......

といった感じにコマンドラインから作成していましたが、折門年末のJetbrains大セールIntelliJを手に入れたのでIDEからプロジェクト作成を試してみました。

環境のセットアップ

ここでの流れは以下の環境で確認しています。

  • IntelliJ 12.01 ultimate
  • Playframework 2.0.4

Play本体はIntelliJからもインストール可能なので、入っていないまま進んでも大丈夫です。

Playサポートプラグインの導入

IntelliJには"Playframework Support"なるプラグインが初期状態で入っています。が・・・これだけではPlayframeworkプロジェクトの作成ができません。

まずは [ Preferences ] -> [ Plugins ] -> [ Browse repositories… ] から、

プラグインを検索してインストールします。今回はJavaでプロジェクトを作成しますが、Play2.0はScalaプラグインに依存しているので両方必ずインストールします。

IntelliJを再起動して、プラグインが有効になっているか確認します。

f:id:horimislime:20130113185227j:plain

プラグインがインストールされたら、新規プロジェクト作成ウインドウでPlayframeworkが選択できるようになります。

f:id:horimislime:20130113185329p:plain

Play本体が入っていなければ [ Download... ] からインストール、既に入っている場合はインストールパスを入力。あとは適当にアプリ名を決めてプロジェクト作成完了です。

作成されたプロジェクト下にあるapp/controllers/Application.javaを右クリック -> "Run Play 2 App" で実行すると、 http://localhost:9000 にアクセス可能になってるはず。

せっかくだし、PaaSにデプロイしてみたい・・・

これだけでは寂しいので、HerokuへのデプロイもIntelliJからやってみます。まずプロジェクトrootにProcfileを作成して、

web: target/start -Dhttp.port=$PORT $PLAY_OPTS

と書いて保存。ネット上ではProcfileの設定に

web: play run --http.port=$PORT $PLAY_OPTS

と書いている場合がありますが、これはPlay1.x系の作法のようなので注意

Gitまわりの初期化

ふだんGit管理する際の流れ通りです。[ VCS ] -> [ Enable Version Control Integration... ] からgitを初期化し、変更履歴画面からファイルをバージョン管理に追加・コミットします。

f:id:horimislime:20130114154840p:plain

Herokuプラグインのインストール

プラグインリポジトリから"Heroku Support"を検索。インストールするとPreferencesにHerokuメニューが追加されるので、Herokuのアカウント管理ページで取得したAPI Keyを入力します。

ウインドウ最下部からHerokuのコンソールを開き、[ Setup ]タブを開くとHerokuに作ったアプリ一覧が表示されます。新しくアプリを作る場合は左の+ボタンから。

f:id:horimislime:20130114153118p:plain

あとはコンソールの [ Application ] タブを選択し、左の再生ボタンを押すと作成したアプリ上にデプロイが開始されます。

以上がデプロイまでの流れでした。

感想:IntelliJべんり

今までplayやgit、herokuコマンドをポチポチ打っていたのが無くなりとても楽になりました。アプリのデバッグ時もHerokuコンソールの [ Logs ] タブでログを追えるので、toolbeltを使う機会がなくなりそうです。

もっぱらEclipseなのでまだIntelliJに慣れるのに時間がかかりそうですが、少しづつPlayを触ってまた何か書きたいと思います。

参考サイト