如何在scala项目中将play框架用作库

mat*_*ter 6 scala playframework

使用Play Framework作为组件获得服务器,但是为路由文件,视图等配置文件系统路径,为嵌入式播放服务器提供或者必须处理线程池是另一回事.基于前面提到的,我开始了一个模板,包括播放作为一个库,但仍然不清楚如何连接路径,希望以IDE导入友好的方式,以便Play可以很好地用于现有的非播放项目,作为一个图书馆.

  • 如何配置路由文件和视图的文件系统路径?
  • 还有什么办法可以像运行框架一样强大?
  • 现在包括哪些特殊用于捆绑项目以进行Play部署?

动机:在目前的状态下,将Play添加到项目中意味着围绕Play包装项目定义和结构,并在sbt中丢失完整的编译(因为run在使用play sbt插件时只完成编译).由于未来的Spray支持是模糊的,Akka http是beta-ish,使用Play作为库似乎堵塞了一个漏洞.

mat*_*ter 3

不知何故,这并没有在谷歌中弹出,直到有人建议了 gitter 上的链接:https ://www.playframework.com/documentation/2.5.x/ScalaEmbeddingPlay

请注意,application.conf包含所需加密秘密的文件可以简单地位src/main/resources于此嵌入模式下(直到您想要根据有关它的文档覆盖它以进行生产为止)。这对于 REST 服务器来说已经足够了。

不过,现在回到文档,以防您想要的不仅仅是 REST:

这可以与 Twirl 模板编译器和 Play 路线编译器结合使用

因此,对于 Play 视图模板(实际上是旋转模板),请参阅我在问题正文中提到的存储库,其中 @JonasAnso 恰好启用了该功能。