PlayFramework 2.6版本下如何配置routes文件路径?
配置Play Framework 2.6自定义routes文件路径
嘿,我刚好对Play 2.6的配置比较熟,针对你把routes文件放在/src/main/resources/的需求,下面是具体的配置步骤:
核心配置:修改build.sbt
Play的routes文件位置是由sbt构建系统管理的,默认指向conf/routes。要让它识别src/main/resources/routes,你需要在build.sbt里添加这段配置:
PlayKeys.routes := Seq(baseDirectory.value / "src" / "main" / "resources" / "routes")
要是你还想保留默认的conf/routes(比如用来拆分不同模块的路由),可以用追加的方式:
PlayKeys.routes := PlayKeys.routes.value ++ Seq(baseDirectory.value / "src" / "main" / "resources" / "routes")
关于application.conf的疑问
你问到要不要在application.conf里配置?答案是完全不需要。因为routes文件的路径是构建阶段的配置,由sbt负责解析;而application.conf管的是运行时的配置项(比如端口、数据库连接这些),和路由文件的位置没关系。
小提醒
- 确保
src/main/resources/routes的语法完全符合Play的路由规则,不然编译时会直接报错哦。 - 因为
src/main/resources是sbt默认的资源目录,这个routes文件会被打包到最终的jar/war包里,但Play运行时会优先用构建阶段指定的路由配置,不用担心路径冲突。
内容的提问来源于stack exchange,提问作者JakubM
相关产品推荐
相关产品推荐

