Locked History Actions

Diff for "Play/PrepareEclipse"

Differences between revisions 1 and 2
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:

以下はplay-1.2.3 + scala-0.9.1で確認。
eclipse用のscalaプラグインとしては2011/8/30時点の最新。

== eclipseプロジェクトにする ==
Line 8: Line 13:
とし、eclipseの「File/Import/General/Existing Projects into Workspace」でワークスペースに入れる。 とする。これでeclipse用の.projectファイル等が生成sあれる。
次に、eclipseの「File/Import/General/Existing Projects into Workspace」でワークスペースに入れる。

== ビルドパス等の確認 ==

プロジェクトのビルドパスを確認してみると、playのライブラリが指定されていることがわかる。

== scalaソースのエラー ==

app/(default package)/controllers.scalaというソースを見てみると

{{{
package controllers

import play._
import play.mvc._

object Application extends Controller {
    
    import views.Application._
    
    def index = {
        html.index("Your Scala application is ready!")
    }
    
}
}}}
Application及びhtmlが未定義になっているが、これらはplayが実行時にviewsディレクトリ以下のファイルから勝手に生成するものであるので、eclipse上では常にエラーの状態のままになる。
ただし、生成物はtmp/generated以下に格納されるので、一度でもplayを実行した後に、このディレクトリをソースパスに含めれば未定義は消えるものと思われる。

Play/ScalaをEclipseで使うための準備

以下はplay-1.2.3 + scala-0.9.1で確認。 eclipse用のscalaプラグインとしては2011/8/30時点の最新。

eclipseプロジェクトにする

途中までは「Scala+IntelliJで使うための準備」と同じ。 elipse用にするには

 play eclipsify myApp

とする。これでeclipse用の.projectファイル等が生成sあれる。 次に、eclipseの「File/Import/General/Existing Projects into Workspace」でワークスペースに入れる。

ビルドパス等の確認

プロジェクトのビルドパスを確認してみると、playのライブラリが指定されていることがわかる。

scalaソースのエラー

app/(default package)/controllers.scalaというソースを見てみると

package controllers

import play._
import play.mvc._

object Application extends Controller {
    
    import views.Application._
    
    def index = {
        html.index("Your Scala application is ready!")
    }
    
}

Application及びhtmlが未定義になっているが、これらはplayが実行時にviewsディレクトリ以下のファイルから勝手に生成するものであるので、eclipse上では常にエラーの状態のままになる。 ただし、生成物はtmp/generated以下に格納されるので、一度でもplayを実行した後に、このディレクトリをソースパスに含めれば未定義は消えるものと思われる。