【Play Framework】Play Framework [1-1] ~ 入門編 / 環境構築 ~

はじめに

 * Play Framework v2.5 の環境構築を記述する
 * なお、フォルダやファイルに関しての説明は、以下の関連記事を参照のこと
http://blogs.yahoo.co.jp/dk521123/36082733.html

■ 環境構築

 * 以下、構築する環境下を記す
  + OS      : Windows10
  + JDK     : JDK1.8
  + Eclipse : Mars.2 Release (4.5.2)
  + Play    : Play2.5.3(Streamy)

前提条件

[1] JDK 1.8以降をインストールしておく

   ※ 環境変数 JAVA_HOME を設定しておくこと

Acivatorの配置

[1] Acivator をダウンロードする(今回は「typesafe-activator-1.3.10-minimal.zip」)
https://www.playframework.com/download
[2] ダウンロードした zipファイルを解凍し、任意の場所に格納する

■今回の構成は以下の通り。

C:\work\activator-1.3.10
 + bin
 + libexec

[3] 環境変数 Path に「【インストール場所】\bin」を追加しておく
    (今回、「C:\work\activator-1.3.10\bin」を追加)

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

Scala用のEclipseプラグインをインストールする
[1] Eclipseを起動し、[Help]-[Install New Software]を選択し、
    以下のURLを入力する
http://download.scala-ide.org/sdk/lithium/e44/scala211/stable/site
ちなみに、URLの情報源は以下のサイトから
http://scala-ide.org/download/current.html
[2] 「Select All」で全てを選んで、「Next」ボタン押下(物凄い時間がかかる)

■ プロジェクトを作成し、実行する

1) プロジェクトの作成

[1] コマンドプロンプト(管理者)を立ち上げ、「activator new 【プロジェクト名】」を入力する

■今回は以下の通り。(実際の入力は「>」の行)
> activator new HelloWorld
...
Fetching the latest list of templates...

Browse the list of templates: http://typesafe.com/activator/templates
Choose from these featured templates or enter a template name:
  1) minimal-akka-java-seed
  2) minimal-akka-scala-seed
  3) minimal-java
  4) minimal-scala
  5) play-java
  6) play-scala
(hit tab to see a list of all templates)
> 5 #(番号を入力し、Enterキー押下)

[2]  【プロジェクト名】\project\plugins.sbtの最終行に以下を追記する

C:\work\activator-1.3.10\bin\HelloWorld\project\plugins.sbt
~~~~
addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "4.0.0") << ここを追記
~~~~

[3] コマンドプロンプトで「cd 【インストール先】\【プロジェクト名】」まで移動して
    「activator eclipse」「activator compile」をそれぞれ実行する

■今回は以下の通り。
> cd C:\work\activator-1.3.10\bin\HelloWorld
> activator eclipse
# (物凄い時間がかかる)
> activator compile

2) プロジェクトを取り込む

[1] Eclipseを立ち上げて、[File]-[Import....]-[General]-[Existing Project into Workspace]を選択し
    「Next」ボタン押下
[2] 1) - [1] で作成したプロジェクト(今回は「HelloWorld」)を選択し、インポートする
[3] Eclipse上で[Project]-[Clean...]でプロジェクトをクリーンにする
# HomeController.java から「index cannot be resolved」ってエラーが出ているが無視

3) Eclipse上でサーバをたちあげるための設定

[1] Eclipseの[Run]-[External Tools]-[External Tools Configurations]
[2] 左ペインで「Program」をダブルクリック
[3] 任意の名前を設定しておく(今回は「Play」)
[4] 右ペインを以下のように設定する
 4-1) location : 【インストール場所】\bin\activator.bat (今回は「C:\work\activator-1.3.10\bin\activator.bat」)
 4-2) Work Directory : ${project_loc}
 4-3) Arguments : ~run

4) Eclipse上でサーバをたちあげる

[1] プロジェクト(今回は「HelloWorld」)を選択した状態で、実行ボタン押下
~~~~
ACTIVATOR_HOME=C:\work\activator-1.3.10
ファイル BIN_DIRECTORY\..\conf\sbtconfig.txt が見つかりません。
[info] Loading project definition from C:\work\workspace\HelloWorld\project
[info] Set current project to HelloWorld (in build file:/C:/work/workspace/HelloWorld/)

--- (Running the application, auto-reloading is enabled) ---

[info] p.c.s.NettyServer - Listening for HTTP on /0:0:0:0:0:0:0:0:9000

(Server started, use Ctrl+D to stop and go back to the console...)
~~~~

[2] ブラウザを立ち上げて、以下のURLにアクセスする
[http://localhost:9000/

■補足

「ファイル BIN_DIRECTORY\..\conf\sbtconfig.txt が見つかりません。」について

 * 以下の関連記事を参照のこと。
http://blogs.yahoo.co.jp/dk521123/36068396.html

activatorコマンドについて

http://qiita.com/seri_k/items/239a356b5622a933c015
 * activator help : ヘルプを表示
 * activator ui : UI起動
 * activator new [プロジェクト名] ([テンプレートID]) : プロジェクト作成
 * activator help : ヘルプを表示
 * activator compile : コンパイル
 * activator update : 更新
 * activator clean : クリーンアップ(ビルドされた生成物を全て消去し、新たにビルドし直す)
 * activator eclipse : eclipse用のプロジェクト作成

 * activator run : サーバ起動
 * activator ~run : サーバ起動(リコンパイル)
* activator clean
■用途
 * コードを書き換えて、activator run したら、エラーが出て表示されない場合
 * コントローラのクラスが更新されていない場合



関連記事

Play Framework の環境構築時のトラブルシューティング

http://blogs.yahoo.co.jp/dk521123/36068396.html

Play Framework [1-0] ~ 入門編 / 事前知識 ~

http://blogs.yahoo.co.jp/dk521123/36082733.html

Play Framework [1-2] ~入門 / Hello World 編~

http://blogs.yahoo.co.jp/dk521123/36077858.html

Play Framework [1-3] ~ 入門編 / モデルの設定 ~

http://blogs.yahoo.co.jp/dk521123/36077949.html