7

在我的应用程序的 main() 中,我有以下代码来备份数据,这样它就不会在系统关闭时丢失。

    //add hook to trigger Production Shutdown sequence
    Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() {
        public void run() {
            Production.shutdown();
        }
    }));

但是,无论我按下StopIDE 中的按钮还是依靠日志输入(代码如下所示),它似乎都不会将数据保存到数据库或将任何日志写入控制台。

    ctx.deploy(server);

    server.start();

    //start the production process
    Production.init();

    System.in.read();
    server.stop();

为什么这个关机功能没有被执行?

4

2 回答 2

13

您需要使用Exit按钮,而不是Stop请参阅我的答案以获取更多详细信息。

请注意,此功能目前仅在运行模式下可用,在调试模式下不可用。

于 2013-06-06T18:51:47.540 回答
0
System.exit(0)

在您的代码中添加这一行。从这里开始调试

于 2019-11-05T12:03:34.187 回答