Play framework 2.0 betaが出たようです3 – Eclipse+sbtで開発しよう

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

2012/1月追記

こちらにplay + eclipse開発の最新状況があります。
https://dev.classmethod.jp/server-side/play20-beta-eclipse2/

Play framework2.0+Eclipse+sbtで開発

Play framework 1.2.xまでは、play eclipsify(play ec)コマンドを使用すれば、playプロジェクトをEclipseプロジェクトにできました。
Play framework 2.0からはsbtベースになったので、sbteclipse ※1という、sbtプラグインを使用して
プロジェクトをEclipseプロジェクト化すれば、Eclipse+sbtでPlay framework2.0の開発ができるようになります。
では早速やってみましょう。
今回使用した動作環境は以下のとおりです。

  • OS : MacOS X 10.7.2
  • Playframework : 2.0β
  • Java : 1.6.0_26
  • Eclipse : 3.7
  • Scala IDE : 2.0.0.beta11

注意:
この記事ではβ版を使用して試しています。
正式リリース前の状況のため思わぬ不具合が生じるかもしれませんので、ご了承ください。

プロジェクト作成

まずは普通にPlay framework 2.0のプロジェクトを作成してください。

% play new PlayEclipse

今回もScalaベースでプロジェクトを作成します。

plugins.sbtファイルを編集

project/plugins.sbtファイルを下記のように編集します。

resolvers ++= Seq(
    DefaultMavenRepository,
    Resolver.url("Play", url("http://download.playframework.org/ivy-releases/"))(Resolver.ivyStylePatterns),
    "Typesafe Repository" at "http://repo.typesafe.com/typesafe/releases/"
)

resolvers += Classpaths.typesafeResolver  //追記

addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse" % "1.4.0") //追記

libraryDependencies += "play" %% "play" % "2.0-beta"

plugins.sbtを保存します。sbtを起動していなければplayコマンドで起動、していれば下記コマンドでリロードしてください。

[PlayEclipse] $ reload 
[info] Loading project definition from /Users/pgdev/srcs/Play20/samples/firstSample/project
[info] Set current project to firstSample (in build file:/Users/pgdev/srcs/Play20/samples/firstSample/)
[PlayEclipse] $ update
[success] Total time: 0 s, completed 2011/11/09 0:57:02
[PlayEclipse] $ 

Eclipseプロジェクト化

reloadとupdateを行って問題なければ、sbt上でeclipse create-srcと入力してください。(補完がきくはずです)

[PlayEclipse] $ eclipse create-src
[info] About to create an Eclipse project for you.
[info] Please hang on, because it might be necessary to perform one or more updates and this might take some time ...
[info] Successfully created Eclipse project files. Please select the appropriate Eclipse plugin for Scala 2.9.1!

Eclipseプロジェクトをimport

次にEclipseを起動し、Eclipse化したプロジェクトをimportします。
※現時点ではなぜか同じappディレクトリが2つビルドパスに存在したので、1つ削除しました
また、もしかしたらApplicationコントローラーで「views.html.index」の呼び出し部分がエラーになっているかもしれません。
その場合はビルドパスに「target/scala-2.9.1/classes」を追加してアプリ起動後に一度アクセスし、Eclipse上でRefleshしてみてください。

まとめ

今回はEclipse + sbtを使用したPlay framework 2.0の環境構築についてご紹介しました。
IDEはEclipse以外にもNetBeansやintellijが使用できますので、使いやすいIDEで開発しましょう。
なお、正式リリース予定のPlay framework 2.0では各種IDEとの連携機能が追加される予定なので、
もうしばらくしたら使用できるようになると思います。

参考サイトなど

  • ※1  https://github.com/typesafehub/sbteclipse