在没有 Web 服务器的 Spring-Boot 应用程序中,保持其运行的正确方法是什么?

Kai*_*Kai 6 java daemon spring-boot

我编写了一个没有嵌入式服务器的小型 spring-boot 应用程序。它旨在从命令行运行并保持运行直到虚拟机收到信号。spring-boot 框架(v2.0)中使应用程序作为服务保持活动的预期方式是什么?我的方法中应该有Thread.currentThread().wait();最后一个语句吗?run(ApplicationArguments args)有启用注释吗?

小智 -1

来自org.springframework.boot.web.embedded.netty.NettyWebServer,官方。

    private void startDaemonAwaitThread(DisposableServer disposableServer) {
        Thread awaitThread = new Thread("server") {

            @Override
            public void run() {
                disposableServer.onDispose().block();
            }

        };
        awaitThread.setContextClassLoader(getClass().getClassLoader());
        awaitThread.setDaemon(false);
        awaitThread.start();
    }
Run Code Online (Sandbox Code Playgroud)