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

如何在playframework中实现非容错作业?,playframework,Playframework,我使用@OnApplicationStart的“通用”作业来执行一些初始化工作。如果其中任何一个失败,游戏应该退出。我尝试了Play.stop(),但在开发模式下,它将重复重新启动。以下代码可以在开发模式下强制退出: @OnApplicationStart public class MyCriticalJob extends Job { public void doJob() { if (!ok()) { Logger.fatal("cannot continue due

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

以下代码可以在开发模式下强制退出:

@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();
      }
    }
  }
}