PlayFramework2.5.xでのプロジェクト作成
PlayFramework2.5.4でデータストアを作る機会があったので、まとめます。
環境
[OS]Mac OS X El Capitan 10.11.6
[Java]Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
[Scala]Scala code runner version 2.11.7
[sbt]sbt launcher version 0.13.7
[homebrew]homebrew 1.1.0-94-gfc3d586
- Typesafe Activatorをインストールする
- PlayFrameoworkのプロジェクトテンプレートを作成する
- とりあえず起動してみる
Typesafe Activatorをインストールする
PlayFrameworkはTypesafe社が開発しているのですが、
Typesafe社の製品のテンプレートを生成してくれるのがActivatorです。
Activatorは色々と便利な機能があったりするのですが、その辺はまた今度ということで。
まぁ、JavaでいうOracleがNetbeansを使って色々なプロジェクトテンプレートを提供しているようなもんです。
今回はHomebrewを利用してインストールします。
Homebrew?なにそれ?という方は以下のリンクを読んでインストールしてください。
Homebrew macOS 用パッケージマネージャー
ターミナルを立ち上げて
$ brew install typesafe-activator
と入力すればOK。
==> Downloading http://downloads.typesafe.com/typesafe-activator/1.2.10/typesafe-activator-1.2.10.zip ######################################################################## 100.0%
こんな表示が出てactivatorがインストールされるかと思います。
PlayFrameoworkのプロジェクトテンプレートを作成する
ターミナルで
$ activator new
と入力するとactivatorが起動して、Play用のプロジェクトテンプレート作成モードになります。
※初回は依存関係をダウンロードするので少し時間がかかるかと思いますが、
初めだけなので気長に待ちましょう。
途中で
Fetching the latest list of templates... Browse the list of templates: http://lightbend.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) > 6
と聞かれるので、今回は6を入力。
Javaでプロジェクトを作りたい方は6を選んでください。
プロジェクト名を入力すれば、
Enter a name for your application (just press enter for 'play-scala') > play-scala-crud
Scalaで書かれたPlayのプロジェクトテンプレートが作成されます。
OK, application "play-scala-crud" is being created using the "play-scala" template. (略) $ cd play-scala-crud/ $ find . . ./.gitignore ./app ./app/controllers ./app/controllers/AsyncController.scala ./app/controllers/CountController.scala ./app/controllers/HomeController.scala ./app/filters ./app/filters/ExampleFilter.scala ./app/Filters.scala ./app/Module.scala ./app/services ./app/services/ApplicationTimer.scala ./app/services/Counter.scala ./app/views ./app/views/index.scala.html ./app/views/main.scala.html ./build.sbt ./conf ./conf/application.conf ./conf/logback.xml ./conf/routes ./LICENSE ./project ./project/build.properties ./project/plugins.sbt ./public ./public/images ./public/images/favicon.png ./public/javascripts ./public/javascripts/hello.js ./public/stylesheets ./public/stylesheets/main.css ./README ./test ./test/ApplicationSpec.scala ./test/IntegrationSpec.scala
ちなみに、ここまでの処理を1コマンドで実行する場合は、
$ activator new play-scala-crud play-scala
と書くこともできます。
activator new <プロジェクト名> <テンプレート名>
ですね。
とりあえず起動してみる
起動は
activator run
です。
$ cd play-scala-crud/ {PROJECT_HOME}$ activator run
PlayFrameworkはデフォルトでNettryが組み込まれており、
起動するとすぐにWEBサーバーが立ち上がってHTTP経由で動きを確認することができます。
$ curl http://localhost:9000/
こんな感じです。
ブラウザで上記アドレスにアクセスすれば、ドキュメントが見れるようになっているかと思います。
ひとまず今日はここまでで。
次回以降は、テスト作成/RDB接続/Json整形などをやっていきます。
Scala入門テキストの最新版
バージョンは少々古いですが、PlayFrameworkでアプリケーションを作る上で参考になる書籍。