macでscala + PlayFramework2を動かして見た(Java初心者)
「PlayFramework2が驚くほど早い!」という記事(http://shanon-tech.blogspot.jp/2012/10/playframework2.html)を見て 試してみたいと思い java初心者がscala + PlayFramework2をboxenを使って入れてみたお話
準備
まずは、scalaとplayをインストール
homebrewでいれれる!
brew install scala brew install play
※僕はboxenを使ってるので、以下を追加して、インストール
package { [ 'scala', 'play' ]:; }
あと、JDKが必要
http://support.apple.com/kb/DL1572?viewlocale=ja_JP&locale=ja_JP からダウンロードして、インストールする。
この記事作成時は、以下のURLで取得可能 http://support.apple.com/downloads/DL1572/ja_JP/JavaForOSX2013-05.dmg
※僕はboxenを使ってるので、以下を追加して、インストール
package { 'Java': provider => 'pkgdmg', source => 'http://support.apple.com/downloads/DL1572/ja_JP/JavaForOSX2013-05.dmg'; }
確認
java入ったかなー?
$ java -version java version "1.6.0_65" Java(TM) SE Runtime Environment (build 1.6.0_65-b14-462-11M4609) Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-462, mixed mode)
scala入ったかなー?
$ scala Welcome to Scala version 2.10.3 (Java HotSpot(TM) 64-Bit Server VM, Java 1.6.0_65). Type in expressions to have them evaluated. Type :help for more information. scala> :quit
play入ったかなー?
$ play help _ _ __ | | __ _ _ _ | '_ \| |/ _' | || | | __/|_|\____|\__ / |_| |__/ play 2.2.1 built with Scala 2.10.2 (running Java 1.6.0_65), http://www.playframework.com Welcome to Play 2.2.1! These commands are available: ----------------------------- license Display licensing informations. new [directory] Create a new Play application in the specified directory. You can also browse the complete documentation at http://www.playframework.com.
問題なし!!
じゃぁ試してみる!
まずは作業用ディレクトリへ移動
$ cd /work/to/path
play コマンドで simple scala application を作成
$ play new hoge _ _ __ | | __ _ _ _ | '_ \| |/ _' | || | | __/|_|\____|\__ / |_| |__/ play 2.2.1 built with Scala 2.10.2 (running Java 1.6.0_65), http://www.playframework.com The new application will be created in /work/to/path/hoge What is the application name? [hoge] > Which template do you want to use for this new application? 1 - Create a simple Scala application 2 - Create a simple Java application > 1 OK, application hoge is created. Have fun!
確認!!
$ tree hoge/ hoge/ ├── README ├── app │ ├── controllers │ │ └── Application.scala │ └── views │ ├── index.scala.html │ └── main.scala.html ├── build.sbt ├── conf │ ├── application.conf │ └── routes ├── project │ ├── build.properties │ └── plugins.sbt ├── public │ ├── images │ │ └── favicon.png │ ├── javascripts │ │ └── jquery-1.9.0.min.js │ └── stylesheets │ └── main.css └── test ├── ApplicationSpec.scala └── IntegrationSpec.scala 10 directories, 14 files
これで簡単なアプリケーションの作成が完了したのかな?
じゃぁ動かしてみる
アプリケーションディレクトリ内へ移動
$ cd hoge
コンパイル開始+起動
$ play run [info] Loading project definition from /work/to/path/hoge/project [info] Set current project to hoge (in build file:/work/to/path/hoge/) [info] Updating {file:/work/to/path/hoge/}hoge... [info] Resolving org.fusesource.jansi#jansi;1.4 ... [info] Done updating. --- (Running the application from SBT, auto-reloading is enabled) --- [info] play - Listening for HTTP on /0:0:0:0:0:0:0:0%0:9000 (Server started, use Ctrl+D to stop and go back to the console...) [info] Compiling 5 Scala sources and 1 Java source to /work/to/path/hoge/target/scala-2.10/classes... [info] play - Application started (Dev)
コンパイルとかしてるので、時間はかかる。 play - Application startedが表示されたら起動完了 あとは、ブラウザで以下のURLを表示できれば、導入〜サンプル作成は完了