如何正确退出独立的Java Play Framework脚本?

时间:2014-12-22 20:41:58

标签: java playframework playframework-2.3

我正在使用Java Play Framework 2.3.7,并且有一个使用StaticApplication的独立脚本,并将内容导入到我希望能够使用runMain命令手动运行的数据库中。

大多数情况下,它运作良好,但我无法弄清楚如何让它正常退出。如果我尝试使用System.exit(0);,则会返回以下错误消息:

Exception: sbt.TrapExitSecurityException thrown from the UncaughtExceptionHandler in thread "run-main-0"

如果我遗漏了System.exit(0),我必须自己使用Ctrl+C来终止这个过程。

有人知道该怎么办?谢谢!

1 个答案:

答案 0 :(得分:1)

在Play中运行StaticApplication(或任何Application)时,您可以使用以下命令停止当前正在运行的Application(只能有一个):

play.api.Play.stop()

Play对象保留对当前正在运行的应用程序的引用,并且调用stop()将通过停止所有正在运行的插件来关闭它。