Play框架下处理致命错误的正确方法

Posted

技术标签:

【中文标题】Play框架下处理致命错误的正确方法【英文标题】:Correct way to handle fatal error under Play framework 【发布时间】:2015-12-08 15:14:58 【问题描述】:

如果您的 Play 应用发现它无法运行,例如由于缺少强制配置项,那么正确的处理方法是什么?

记录错误和 System.exit() ?还是有“更好”的方式?

【问题讨论】:

【参考方案1】:

通过一些研究,似乎有is a method 用于关闭实际的播放应用程序,但这并没有关闭应用程序服务器(例如 Netty)(至少在开发模式下)。将其与 System.exit() 结合起来似乎可以通过首先处理 Play 来“安全”关闭:

play.api.Play.stop
System.exit(-1)

但是在你的具体情况下测试它会很有趣。

This discussion 多讲安全关机的意义,并有调用 Play.stop 的例子。

顺便说一句,Netty 似乎有a stop method,除了Play.stop 调用之外,它还做了其他一些事情。

警告:没有在愤怒中使用这个。

【讨论】:

以上是关于Play框架下处理致命错误的正确方法的主要内容,如果未能解决你的问题,请参考以下文章

打开CAD出现致命错误:安全系统(保密锁或网络许可)不起作用或未正确安装

使用 Play 框架的 REST URL 错误处理

c语言编程中出现的纠错英文语句是什么意思?

Play Framework:验证错误重定向的最佳实践

通过自定义错误页面处理 PHP / mysql 错误(包括致命错误)

MySql 异常未处理 - 命令执行期间遇到致命错误