Play Framework:在没有子项目的情况下拆分多个文件中的路径

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Play Framework:在没有子项目的情况下拆分多个文件中的路径相关的知识,希望对你有一定的参考价值。

我的游戏项目非常庞大,路线文件约为1Mb。现在,当scala编译时,由于路由和从我的路由文件创建的反向路由scala文件(也很大),我有“方法代码太大”的异常。

所以,我需要在没有子项目的情况下拆分我的路径文件。实际上,我不能将我的项目分成子项目,因为它的组件是相互依赖的。

我尝试了两种方法:

  • 我添加了一个名为technical.routes的新conf文件,在里面添加一些路由,从“routes”中删除相同的路由,然后用“ - > technical.Routes”导入文件。所有编译,我没有我以前的例外,但是有些事情是错误的,因为当它停止编译时,它会一遍又一遍地开始......并且永远不会结束。
  • 我添加了一个名为technical.routes的新conf文件,在里面添加一些路由,从“routes”中删除相同的路由,但是不是在我的主路由文件中导入它,我在conf文件中添加了它:“application.router =” routes,technical.routes“”。但它不起作用,因为这里只能声明一条路线。

请问怎么办?

答案

嗯,第一种方法是有效的。我从零开始,它起作用了。我在编译命令之前做了一个干净的命令。似乎旧的编译文件是我的问题的原因。

请注意,路径文件中的包名称不能重叠。例如。在此示例中,technical.routes文件包含controllers.technical中的所有路由,主路由文件不能包含controllers.technical包中的任何路由。

conf/routes内容:

# Routes
# This file defines all application routes (Higher priority routes first)
# ~~~~

->  /technical technical.Routes

GET     /        controllers.Dashboard.index()

conf/technical.routes内容:

# Routes
# ~~~~

GET     /        controllers.technical.App.index()
另一答案

如果您的文件名是technical.routes,则在包含该文件时,请提及technical.Routes(caps)。

- >后面的参数是url前缀,因此要访问technical.routes文件的任何url,需要添加前缀。

http://127.0.01/technical / {在technical.routes文件中定义的url}

以上是关于Play Framework:在没有子项目的情况下拆分多个文件中的路径的主要内容,如果未能解决你的问题,请参考以下文章

SBT 多项目构建:针对不同子项目的 2 个不同版本的 sbt play 插件

如何在 java Play Framework 中发送推送通知

Play Framework:如何不查看文件夹以了解 Play Framework 中的更改

Play Framework Secure Module:登录JSON响应接口

在 Play Framework 1.3 上手动运行作业

我们如何更改 Play Framework 内部使用的 EHCache 版本?