如何在playframework中实现错误非容错作业?

时间:2012-03-06 15:21:32

标签: playframework

我使用@OnApplicationStart的“通用”作业来进行一些初始化工作。如果其中任何一个失败,应该退出游戏。我尝试了Play.stop(),但在开发模式下,它会重复重启。

1 个答案:

答案 0 :(得分:3)

以下代码可以在开发模式下执行暴力退出:

@OnApplicationStart
public class MyCriticalJob extends Job {
  public void doJob() {
    if (!ok()) {
      Logger.fatal("cannot continue due to ...", ...);
      if (Play.mode.isDev()) {
        Runtime.getRuntime().halt(-1);
      } else {
        Play.stop();
      }
    }
  }
}