所以我有一个相当大的游戏!项目使用标准的Java东西。我想开始使用Scala,并认为我可以将两者结合起来。我安装了scala模块并添加了配置行。然后我添加了一个像这样的新控制器:
package controllers
import play.mvc._
object Blog extends Controller {
def index = "test"
}
但是,当我重新启动服务器并尝试浏览http://localhost:9000/Blog/index时,我收到“未找到Blog.index操作”
我需要做些什么来为这个项目添加Scala支持,还是我必须从get get创建一个带Scala的新项目并复制所有文件?
更新
路线:
# Routes
# This file defines all application routes (Higher priority routes first)
# ~~~~
# Home page
GET /explorer Application.index
GET /signup Application.signUp
POST /register Application.register
GET /tour Main.tour
GET / Main.homePage
# Map static resources from the /app/public folder to the /public path
GET /public/ staticDir:public
* /admin module:crud
# Catch all
* / module:secure
* /{controller}/{action} {controller}.{action}
日志:
@65kk1d8dn
Blog.index action not found
Action not found
Action Blog.index could not be found. Error raised is Controller controllers.Blog not found
play.exceptions.ActionNotFoundException: Action Blog.index not found
at play.mvc.ActionInvoker.getActionMethod(ActionInvoker.java:447)
at play.mvc.ActionInvoker.invoke(ActionInvoker.java:78)
at Invocation.HTTP Request(Play!)
Caused by: java.lang.Exception: Controller controllers.Blog not found
... 3 more
答案 0 :(得分:3)
因为无论出于何种原因*,它不是Blog.index
,而是Blog$.index()
。
答案 1 :(得分:3)
在我看来路线文件中有错误,您是否可以添加配置以及您看到的完整错误消息?
编辑(添加路线后):
mm我担心你的问题是Windows(我上面的评论明显回答,我知道)。我在Play Google小组中看到了一些与Windows相关的问题。由于Scala的支持在某种程度上仍然有点“实验性”,我只相信你踩到了一个bug。我会和Play团队一起创建一张票。