IntelliJ IDEA(無償版)でScala+PlayFramework2.3の開発環境を作った話
何故かScalaを始めることにしたので、環境構築メモです。意外と躓きました。
環境
IDE
- IntelliJ IDEAをインストールします。
- version(Community Edition): 14.0.3
- Download -> Windows -> Download Community
- キーバインドをEmacs風に変更(個人的趣味によります)。
- Scala Pluginを導入
- File -> Setting -> Plugins -> Install JetBrains plugin -> Scala でインストール、IDEA再起動。
Scala本体
Play Framework2 プロジェクト作成
- Play Frameworkのサイトからダウンロードします。
- 展開したactivatorを適当なディレクトリに設置してパスを通します。
- プロジェクト作成予定のディレクトリの親ディレクトリにコマンドプロンプトで移動して
activator new
実行。- 作成するプロジェクト種別を聞かれるので
play-scala
を入力。 - プロジェクト名を聞かれるので適当な名前を入力する。
- 作成するプロジェクト種別を聞かれるので
IDEにプロジェクトを取り込む
IntelliJ用の設定ファイル生成(idea
コマンド)はしなくても取り込み出来る模様です。
- IntelliJ IDEAを起動。
- すでに開いているプロジェクトがあれば閉じます。
- Import Projectをクリック。
- ファイル選択画面が表示されるので、先ほどの
activator new
で作られたプロジェクトのディレクトリを選択し、OKをクリック。 - Import project from external model、SBTを選択した状態でNextをクリック。
- お好みにより以下を設定してFinishをクリック。
- プロジェクトのファイル一覧は Alt+1 またはメニューのNavigate -> Tool Window -> Projectで開けます。
IDEからデバッグ実行
IntelliJ IDEA Ultimate Editionを使っていれば、ScalaプラグインにPlay2サポートが入っていて、簡単にデバッグ実行できるらしいですが、Community Editionの場合は、単体でサーバーを起動してリモートデバッグする形を取ります。
- IntelliJ IDEAメニューのRun -> Edit Configurationsを選択します。
+
をクリックして新規設定の追加、Remoteを選択します。- コマンドプロンプトでプロジェクトのディレクトリに移動し、
activator -jvm-debug 9999 run
コマンドを実行します。run
を~run
にするとviewの変更監視が出来るとか、どうとか。詳細未確認。
- IntelliJ IDEAのプロジェクトビューから、
/app/controllers/Application
ファイルを開き、Ok(views.html.index("Your new application is ready."))
の行の左端をクリックしてブレークポイントを作成します。 - IntelliJ IDEAメニューのRun -> Debug -> 上記で作成したデバッグ設定名を選択し、デバッグモードを起動します。
- IntelliJ IDEAのコンソールに
Connected to the target VM, address: 'localhost:9999', transport: 'socket'
と出ていればOK
- IntelliJ IDEAのコンソールに
- 適当なウェブブラウザから
http://localhost:9999/
にアクセスすると、ページの読み込みが終わる前にIntelliJ IDEAのブレークポイントで処理が停止します。
参考
Play Framework公式ドキュメント
他
- Intellij IDEA/Scala/Playframework2.0 での環境構築に関するメモ #play_ja - Shinya’s Daily Report
- Scala + PlayFramework(主にmacで) - Qiita
- Scala+Play 2.0でWebアプリ開発入門(3):便利なPlayコンソールとEclipseでのデバッグ方法 (1/3) - @IT
*1:何故かTypesafe Activatorのサイトから落とした奴だとプロジェクトがビルドエラーになってしまい、上手く行かなかったんですよね……。