LoginSignup
32
33

More than 5 years have passed since last update.

Typesafe Activatorを使ってPlay2のProjectを作成してHerokuで動かす

Posted at

はじめに

ちょっとJavaのライブラリをWebService化したいと思ってせっかくなので PlayFramework2(以下、play2)をやってみようと思いました。
ただ、play2を始めるまでに、sbtとか色々準備しなきゃなのかなーと思っていたら、良い意味で裏切られまして、異様に簡単でした。
最初のDownloadの時間とかはそこそこかかりますが、作業自体は非常に少なくて済みます。
Typesafe Activator というのがとにかくすごかったです。

事前準備

以下のものが既に入っているとします。

  • JDK1.6 or 1.7
  • heroku toolbelt
  • herokuにアカウント(すぐに作れます)

Versionなど

今回試した環境のVersionです。

  • MacOSX: 10.9.2
  • Typesafe Activator: 1.0.13
  • play 2.2.1 built with Scala 2.10.2
  • JDK1.7: build 1.7.0_51-b13
  • heroku: heroku-gem/2.20.1

手順

Typesafe Activator で play2の雛形を作る

Step1

http://www.playframework.com/download の左側に Download Activator 1.0.13 (256MB) 等とある部分からZIPファイルをDownloadして、適当なDirに展開します。

Step2

その中にある activatorというファイルを実行します。
しばらくすると、勝手にブラウザに

スクリーンショット 2014-03-04 17.53.49.png

という画面が表示されます。

step3

この中の
スクリーンショット 2014-03-04 17.54.27.png
の部分で、下のリストから 「Hello Play Framework!」 というのを選んで、下の「CREATE」ボタンを押します。

step4

またしばらくすると、勝手にブラウザが開き、
スクリーンショット 2014-03-04 17.58.17.png

というような画面が表示されます。

これでRun the appとかするとまず、Local環境でplayのhello world的なものが実行できてしまいます。
単体テストやソースコードの編集もWebブラウザからできます。
IDEAやEclipseのProjectファイルもWebブラウザでボタンを押せば作成されます。

げに恐ろしい話です。

HerokuのApp用の設定をする

HerokuのDocument自体少し古い気がするので、必要のない作業もあるかもしれませんが、今回は下記の手順でOKでした。

まず、先ほどProjectを作ったDirに行きます。

Procfileの作成

Procfile
web:    target/universal/stage/bin/hello-play -Dhttp.port=$PORT

hello-playの部分は Project名になるそうです。
参考: http://qiita.com/kazumax1027/items/9c8f6bee723eee598c55

conf/dependencies.yml

conf/dependencies.yml
# Application dependencies

require:
    - play 2.2.1

system.properties

これはJava1.7を使うときのみ必要です。(そうでなければjava1.6になります)

system.properties
java.runtime.version=1.7

HeorkuにPushする

Project作成

cmd
heroku login
heroku create

Push

cmd
git init
git add .
git commit -m init
git push heroku master

Webサイト確認

下記のコマンドでブラウザでPushしたサイトが開きます。

cmd
heroku open

これは便利ですねー

余談

ちなみにですが、playのconsoleなどには下記のコマンドで入れます。

cmd
./activator play
32
33
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
32
33