Solon v3.0.6

问题:非 web 项目开发,且启动不退出?

</> markdown

当进程启动时,有“用户线程”(也叫“非守护线程”)时则不会退出,没有则会退出。

  • 一般 web 项目,会启动 http-server (内部就有“用户线程”)

当没有“用户线程”,又不想退出。可使用:SolonApp:block() 方法。

1、如果没有引用带 web 通讯的包

一般非 web 开发,我们使用 solon-lib “快捷组合包”比较好

@SolonMain
public class DemoApp{
    public static void main(String[] args){
        //启动后,调用阻塞函数
        Solon.start(DemoApp.class, args).block();
    }
}

2、如果引用了带 web 通讯的包

比如引入了 solon-web 或 solon-boot-xxx 的包。但是,又禁掉了 http

@SolonMain
public class DemoApp{
    public static void main(String[] args){
        Solon.start(DemoApp.class, args, app->{
            //禁掉 http
            app.enableHttp(false);
        }).block(); //启动后,调用阻塞函数
    }
}