播放异常:'{'预期但找到'import'

时间:2013-09-23 18:14:01

标签: scala playframework-2.0

它引发了我对第3行的例外。事情是我只有这些行:

package controllers

import play.api._
import play.api.mvc._
import views._
import models._

object Application extends Controller {

  def index = Ok(views.html.index("grrr", "blabla"))

}

编辑:index.scala.html

@import helper._

@main("Todo") {

    <h1>Hello World</h1>

}

我在windows xp上使用play 2.2.0(使用sbt)

2 个答案:

答案 0 :(得分:4)

我认为这个问题与你的IDE中的行分隔符有关。我曾经将LF(Linux)改为CR(Mac)(错误地,不知道这会对编译产生影响)并且遇到同样的问题。更改为默认sperator后一切恢复正常。

答案 1 :(得分:2)

Play中的第一行!模板是为签名定义保留的。创建新的Play应用程序时,Welcome屏幕中也会提到这一点。

除了您导入helper._的问题之外,我还会执行以下操作:

  1. 将第一行设为空,或至少 NO 导入语句。
  2. 运行play clean
  3. 在此之后它应该有效,我希望: - )
  4. 更多信息:

    编辑:2013.09.24 at 22:15

    您将两个参数传递给视图模板(views.html.index("grrr", "blabla")),(视图被编译为函数)。所以在你的函数(`index view')中,第一行 SHOULD 定义了函数签名(arguments)。我认为您应该将模板编写为:

    @(firstString : String, secondString : String)
    
    @import helper._
    
    @main("Todo") {
    
        <h1>Hello World</h1>
    
    }