找不到 Play(2.6.0) 框架的操作
Action not found for the Play(2.6.0) Framework
我正在使用 Intellij Idea + Play 2.6.0 + com.google.code.play2-maven-plugin
设置开发环境。
我的controller class HomeController
放在下面的结构中(app
是源码根)
app
controllers
HomeController
密码是:
package controllers
import javax.inject._
import play.api.mvc._
@Singleton
class HomeController @Inject()(cc: ControllerComponents) extends AbstractController(cc) {
def index = Action {
Ok("Hello,World")
}
def count = Action {
Ok("10")
}
}
routers
文件是:
GET / controllers.HomeController.index
GET /count controllers.HomeController.count
当我运行maven目标:play2:run
,服务器启动,当我
访问 http://localhost:9000/ or http://localhost:9000/count
,每个表示 Action Not Found for request '/'
和 Action Not Found for request '/count'
您的控制器 class 名称是 HomeController2 但您的路由器指向 controllers.HomeController。
选择一个解决方案:)
- 将路由更改为 HomeController2.count 和 HomeController2.index(在这种情况下,您的控制器源代码没问题)
- 或 将您的 class 移动到控制器包(将 包控制器 添加到源代码的顶部)并重命名它到 HomeController(在这种情况下你的路线是正确的)
找出问题,pom.xml
应该用<packaging>play2</packaging>
,
HomeController
例子借鉴自https://github.com/play2-maven-plugin/play2-maven-test-projects/tree/master/play26/scala/starter-example
感谢@balage 帮助解决问题。
我正在使用 Intellij Idea + Play 2.6.0 + com.google.code.play2-maven-plugin
设置开发环境。
我的controller class
HomeController
放在下面的结构中(app
是源码根)app controllers HomeController
密码是:
package controllers
import javax.inject._
import play.api.mvc._
@Singleton
class HomeController @Inject()(cc: ControllerComponents) extends AbstractController(cc) {
def index = Action {
Ok("Hello,World")
}
def count = Action {
Ok("10")
}
}
routers
文件是:GET / controllers.HomeController.index GET /count controllers.HomeController.count
当我运行maven目标:play2:run
,服务器启动,当我
访问 http://localhost:9000/ or http://localhost:9000/count
,每个表示 Action Not Found for request '/'
和 Action Not Found for request '/count'
您的控制器 class 名称是 HomeController2 但您的路由器指向 controllers.HomeController。
选择一个解决方案:)
- 将路由更改为 HomeController2.count 和 HomeController2.index(在这种情况下,您的控制器源代码没问题)
- 或 将您的 class 移动到控制器包(将 包控制器 添加到源代码的顶部)并重命名它到 HomeController(在这种情况下你的路线是正确的)
找出问题,pom.xml
应该用<packaging>play2</packaging>
,
HomeController
例子借鉴自https://github.com/play2-maven-plugin/play2-maven-test-projects/tree/master/play26/scala/starter-example
感谢@balage 帮助解决问题。