在 Scala IDE 2.0 中设置和使用 Play Framework 2.0

红薯 发布于 2012/02/17 09:13
阅读 3K+
收藏 4
本文将向你介绍如何在 Scala IDE 开发环境中设置并开始使用 Play Framework 2.0 .

前提要求

设置 Play 2.0

为了创建 Play Web 应用,我们需要先安装该框架,如果你尚未安装,可以阅读 Play documentation 来完成这个步骤.

  • 首先下载 Play framework 2.0-RC1 地址:http://www.playframework.org/2.0.

  • 解压到你希望的目录,本文我们假设解压后路径是 /path/to/play20

  • 设置环境变量 (Linux)

    export PATH=$PATH:/path/to/play20

创建一个 Play 2.0 应用

  • 在你的开发目录中,让 Play 创建一个新的 Web 应用,使用的是简单的 Scala 应用(选项1)。

    play new testApp
  • 进入应用目录

    cd testApp
  • 启动 Play.

    play
  • 在 Play 中,启动并运行你刚创建的应用

    run
  • 打开浏览器检查应用的执行,地址 http://localhost:9000/.

    running

为 Scala IDE 配置 Play 2.0 Web 应用

现在 Play 应用已经可以运行了,接下来我们要将它导入到 Scala IDE 中。

Play 2.0-RC1 集成了 eclipsify, 不幸的是 Scala IDE 2.0 并不完全支持它生成的配置 (详情请看 #1000907).

所以我们只好使用 sbteclipse 来创建一个 Eclipse 项目

  • 首先,按 Ctrl + D 退出 Play

    ctrl-d, exit
  • 增加 sbteclipse 到 sbt 来创建 project/build.sbt 文件并添加如下一行

    resolvers += Classpaths.typesafeResolver addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse" % "1.5.0") 
    modify project/build.sbt
  • 重新打开 Play

    play
  • 生成 Eclipse 项目配置文件

    eclipse
  • 然后重新启动应用

    run

为 Play 2.0 应用配置 Scala IDE

对 Eclipse 的一些简单设置会让接下来的开发更加方便。

  • 打开 Eclipse 内置的浏览器视图,并检查是否可以访问网络

    http://localhost:9000/
  • 配置 Eclipse 自动检测文件系统中的文件更改

    refresh automatically
  • 如果你没有安装 Eclipse Web 开发工具包,Eclipse 将会在浏览器中打开 .html 文件,因此我们需要配置让它使用 Scala IDE 来打开。

    HTML file in text editor

导入 Play 应用到 Scala IDE

设置已经完成,现在该将项目导入到 Scala IDE 中了。

  • 将 Play 2.0 Import the Play 2.0 应用作为一个 Existing Projects into Workspace. 导入

    import project
  • 很好,编译成功

    everything compiles

做一些其他开发

现在我们可以开始做一些实际的开发工作了。

我们将修改默认的首页来显示一些欢迎信息。

  • 首先,使用新建 Scala Class 向导来创建一个 modes.Quote 类

    create model.Quote
  • models.Quote 添加一些变量

    package models case class Quote(val text: String, val author: String) { } 
  • 添加一些附加参数到 index.scala.html 视图并更新布局

    @(message: String, quote: models.Quote) @main("Welcome to Play 2.0 beta") {     <p>@quote.text<em> - @quote.author</em></p> } 
  • 该模板将由 Play 框架转换成 scala 代码,在 Eclipse 内置的浏览器中点击刷新按钮来看到刚才修改的变化

  • Play 返回了编译错误信息说应用没有正确的使用模板,同时提供了错误的代码位置

    compilation error
  • 修复这个代码的错误

    def index = Action {   Ok(views.html.index("Your new application is ready.",       Quote("Citer les pensees des autres, c'est regretter de ne pas les avoir trouvees soi-meme.",           "Sacha Guitry"))) } 
  • 再次使用内部浏览器检查修改结果

    done

深入阅读

怎么样,可以继续使用 Play 2.0 开发应用了吗?更多的文档请看 documentation website

via http://scala-ide.org/docs/tutorials/play20scalaide20/index.html
加载中
0
浪客Dandy
浪客Dandy

再来篇IDEA的?

mj4738
mj4738
下一个IDEA的修订版会支持Play 2.0的
0
S
SpeedVan
eclipsify我从beta就用了,没感觉有啥问题, #1000907 beta版也有的,说的是会用到一些生成的源文件,所以只要引入源路径即可。现在问题是,每次依赖更改,要通过使用一次eclipsify来更新项目
mj4738
mj4738
IntelliJ 也有这个问题, 但一般Play 带的库估计足够用了
0
aiasfina
aiasfina

诶诶,Scala-IDE一打开没了500MB的内存,伤不起啊...

mj4738
mj4738
跟IntelliJ 差不多吧
返回顶部
顶部