※簡略できる手順などありましたら,教えていただけると助かります.
環境
- eclipse 3.5.2
http://archive.eclipse.org/eclipse/downloads/drops/R-3.5.2-201002111343/index.php - Scala IDE
http://download.scala-ide.org/update-1.0.0-milestones-2.8.1.final - scala 2.8.1.final
※プロジェクト新規作成時に同梱されるので,なくても開発はできる(はず). - play 1.2.2
http://www.playframework.org/download - Scala Module 0.9.1
http://www.playframework.org/modules/scala
※バージョン管理ツールに svn を使用しますが,svn の環境についてはすでに準備されているものとします.
手順
play-scala プロジェクトの新規作成
詳細な play のインストールについては,本家サイトを参照ください.
ここでは,scala module を使用したプロジェクトの新規作成についてのみ記述します.新規作成を行うには play new コマンドに with オプションにて,scala を指定します.$ play new hoge --with scala
次のように表示されればOKです.~ _ _ ~ _ __ | | __ _ _ _| | ~ | '_ \| |/ _' | || |_| ~ | __/|_|\____|\__ (_) ~ |_| |__/ ~ ~ play! 1.2.2, http://www.playframework.org ~ ~ The new application will be created in /some/workspace/hoge ~ What is the application name? [hoge] ~ ~ Resolving dependencies using /some/workspace/hoge/conf/dependencies.yml, ~ ~ play->scala 0.9.1 (from playLocalModules) ~ ~ Installing resolved dependencies, ~ ~ modules/scala-0.9.1 -> /opt/play-1.2.2/modules/scala-0.9.1 ~ ~ Done! ~ ~ OK, the application is created. ~ Start it with : play run hoge ~ Have fun! ~
プロジェクトが作成できたので,svn リポジトリに登録しておきます.$ svn import ./hoge http://somewhere/svn/hoge/trunk/hoge -m "new project"
play-scala プロジェクトを eclipse プロジェクトに変換する.
play-scala プロジェクトを eclipse で扱えるようにするためには,コマンドで eclipse プロジェクト化する必要があります.
まず eclipse に取り込む前に,一度チェックアウトしておきます.$ svn co http://somewhere/svn/hoge/trunk/hoge /some/hoge $ cd /some/hoge $ play eclipsify
これで..classpath, .projectなどのファイルや eclipse からの起動に必要な launcher が納められた eclipse ディレクトリが作成されたものと思います.eclipse へ import
あとは,取り込むだけといきたいのですが,ここでそのままパッケージ・エクスプローラにて,[右クリック]→[インポート]→[既存プロジェクトをワークスペースへ]から eclipse に import すると,次のようなエラーが発生します.value Application is not a member of package views
これを回避するためには,プロジェクトを起動させ,scala ファイル(および class ファイル)を自動生成させる必要があります.
エラーは無視して,eclipse 上からプロジェクトを起動させます.起動させるためには,hoge/eclipse/hoge.launch を右クリックから実行させればOKです.コンソールにListening for transport dt_socket at address: 8000 08:24:00,422 INFO ~ Starting /some/workspace/hoge 08:24:00,446 INFO ~ Module scala is available (/opt/play-1.2.2/modules/scala-0.9.1) 08:24:01,431 INFO ~ Scala support is active 08:24:01,432 WARN ~ You're running Play! in DEV mode 08:24:01,471 INFO ~ Listening for HTTP on port 9000 (Waiting a first request to start) ...
のように表示されたら,ブラウザから http://localhost:9000 にアクセスします.そこで再度コンソールを見るとCompiling: /some/workspace/hoge/app/controllers.scala /opt/play-1.2.2/modules/docviewer/app/helpers/CheatSheetHelper.java /opt/play-1.2.2/modules/docviewer/app/DocViewerPlugin.java /some/workspace/hoge/tmp/generated/views.defaults.html.welcome.scala /some/workspace/hoge/tmp/generated/views.html.main.scala /opt/play-1.2.2/modules/docviewer/app/controllers/PlayDocumentation.java /some/workspace/hoge/tmp/generated/views.Application.html.index.scala Traversing /some/workspace/hoge/app/controllers.scala Traversing /some/workspace/hoge/tmp/generated/views.Application.html.index.scala Traversing /some/workspace/hoge/tmp/generated/views.defaults.html.welcome.scala Traversing /some/workspace/hoge/tmp/generated/views.html.main.scala API phase took : 0.114 s 08:24:21,920 INFO ~ Application 'hoge' is now started !
のように自動でコンパイルが行われていることがわかります.あとは,hoge プロジェクトを右クリックして,[プロパティー]→[Java のビルド・パス]→[ライブラリー]→[クラス・フォルダーの追加]から,hoge/tmp/classes を選択して,[OK]を選べばエラーが発生しなくなります.eclipse 設定ファイルを管理対象外にする
最後に,play eclipsify にて生成されたファイルやプロジェクト起動時に自動生成されたファイルを svn へコミットしないようにしておきます.管理対象外とするのは,以下のファイルおよびディレクトリです.- hoge/.settings/
- hoge/eclipse/
- hoge/tmp/
- hoge/.classpath
- hoge/.project
- hoge/.scala_dependencies
0 件のコメント:
コメントを投稿