リリースされたので変更点と試し方を説明しますの便乗(?)的な感じで、なぜか自分もチュートリアルを書いてみます。普通に書いたら意味ないので、少しだけ変わった方法を書いてみます。activatorを使わない方法を書きます。play2.3がどうやって成り立ってるのかを説明するのも兼ねて、activatorを使わないだけでなく、なんらかのテンプレート使ったりとか自動生成とかもせずに、一つずつ手作業でやって、最低限の構成のところまでだけを説明します。実用的なのかどうかはわかりません。activator使うなり、独自にテンプレート的なプロジェクトを用意しておくなり、giter8使うなりした方がいいかもしれません。あと、先に完成後の最小限のplay2.3のサンプルプロジェクトのgithubのURL貼っておきます。ここは流石に説明省略。0.12以前だとだめです。0.13系でないとだめです。0.13系なら0.13.2でも0.13.6でもどれでもいいです。projectというディレクトリを作り、project/build.propertiesというファイルに"sbt.version=0.13.7"と記述します。これは必ず書きましょう。project/plugins.sbt作成plugins.sbtに以下のように記述。間に空行入れるの忘れないように。build.sbt作成これはトップレベルに置きます。runして、localhost:9000を開く初めてだと、jarのダウンロードにかなり待たされますが、(数分から数十分)気長に待ちましょう。worldという文字列が表示されるはずです。おわりまとめ結局、play2.3で最低限必要なのは、以下のような5つのファイルです。*6project/build.propertiesproject/plugins.sbtbuild.sbtapp/controllers/Application.scalaconf/routes今までの流れを、もう一度それぞれの意味も解説しつつ振り返るとまず、playframework2は単なるsbtのプロジェクトです。sbt抜きにplay2をやることは不可能なので、sbtの知識を(徐々にでいいので)増やしましょう。project/plugins.sbtにaddSbtPluginと書くのは、play2にかぎらず、sbtでpluginを使う場合の一般的な方法です。build.sbtにおいて、".enablePlugins(PlayScala)"という部分は、sbt0.13.5から導入された新しいsbtのpluginの使い方です。pluginを追加しています。それ以外は、あくまでもなんの変哲もないsbtのプロジェクトです。5のbuild.sbt作成までで、プロジェクトのひな形は一応完成です。webアプリとして最低限動かして何らかのレスポンスを返すにあたっては、play2の場合、最低限コントローラーとroutesファイルが必要です。この、コントローラーの.scalaファイルや、routesファイルの置き場などが、play2独自のものです(playをsbtのpluginとして読み込んだことにより、そうなっている)。普通のsbtプロジェクトはsrc/main/scalaにメインのコードを書いていくのが、上書き設定されていてapp以下に置くようになっています。最低限の仕組みだけを説明すると、それほど長くないですね?「scaffoldとかで自動生成されるの気持ち悪い、一つ一つ意味を理解したい!」という人は、一旦こんな感じでやってみればいいと思います。activatorも試してみて、便利だと思ったら使いましょう。使いたくなかったら、それぞれ自分に合った独自のやり方見つけましょう。実際は、こんなシンプルな構成でplay2.3は最低限動くというのも知っていると役に立つかもしれません個人的にgiter8テンプレート作ってるので、使いたい人は使ってください。runすれば動くはず*2:が、特に理由なければ、最新使う、でいいと思う*3:sbtのlauncherは0.13.2などでもいいけど、ここに0.13.5以降のversionを書かないと、play2.3はsbt0.13.5以降の機能を要求するので使えません*4:ただし、sbt0.13.7以降にすれば、空行必要ない*5:scalaVersionは書かなくても動きますが、書かないとsbtが作られたScalaと同じversion、つまりScala2.10.4になります。1注目記事はてなブログをはじめよう!xuweiさんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。