默认情况下,只有在您向其发送http请求后,您的Play应用程序才会完全启动(已编译,Global
' s onStart
被调用等。
是否有办法禁用此延迟加载并使Play应用程序编译代码并在运行应用程序进程后启动?
PS:我正在使用Play 2.3。
更新:正如Ryan所指出的,懒惰的负载只发生在开发中。模式。尽管如此,我仍然需要禁用它,尽管这只与在dev中运行的应用程序相关。模式。
答案 0 :(得分:1)
延迟加载仅适用于开发模式(play run
)。生产模式并不懒惰。
https://www.playframework.com/documentation/2.3.x/Production
答案 1 :(得分:1)
您可以使用testProd
代替run
(在当前的2.5版本中)运行您的应用程序。这将以prod模式而不是dev。
如果您从IntelliJ而不是Play控制台运行,则需要创建新的运行配置,选择SBT任务,然后在任务部分输入testProd
。
答案 2 :(得分:0)
正如瑞安解释它只是为了开发。
提示:IntelliJ Idea有一个Play支持,默认情况下它会在dev模式下运行后打开新的浏览器窗口,它会自动初始化编译。
请确保您可以使用简单的shell脚本/批处理文件执行相同操作。
答案 3 :(得分:0)
play start
。这会在生产模式下启动您的应用,并在应用开始时加载onStart
。