如何使用 CommandLineRunner 显式启动 spring boot servlet 服务器(tomcat/jetty)

发布于 2025-01-10 21:12:49 字数 741 浏览 0 评论 0原文

我的 spring boot 2.x 应用程序是一个 servlet 服务器。它需要根据命令行参数执行操作,其中只有一个是启动 servlet 服务器。

示例如下:

@SpringBootApplication
public class ExampleMain implements CommandLineRunner {

    public static void main(String[] args) {
        new SpringApplicationBuilder(ExampleMain.class)
                                    .web(WebApplicationType.NONE)
                                    .run(args);
    }
    @Override
    public void run(String... args) throws Exception {
        if (args[0].equals("help")) {
            System.out.println("Help is on the way");
        } else if (args[0].equals("start")) {
            // START Servlet Server here
        }
    }

}

我猜测有一些可注入实例可以用来启动 servlet 服务器,但我不知道在哪里可以找到它。

My spring boot 2.x application is a servlet server. It needs to perform actions based on command line args only one of which is starting the servlet server.

Here's the example:

@SpringBootApplication
public class ExampleMain implements CommandLineRunner {

    public static void main(String[] args) {
        new SpringApplicationBuilder(ExampleMain.class)
                                    .web(WebApplicationType.NONE)
                                    .run(args);
    }
    @Override
    public void run(String... args) throws Exception {
        if (args[0].equals("help")) {
            System.out.println("Help is on the way");
        } else if (args[0].equals("start")) {
            // START Servlet Server here
        }
    }

}

I'm guessing there is some injectable instance I can use to start the servlet server, but I don't have a clue where to find it.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

星軌x 2025-01-17 21:12:49

如果提供命令行参数是您考虑使用某些命令行运行程序的主要原因。我可以为您提供以下解决方案 -

您可以从 IntelliJ/Netbeans IDE 本身提供命令行参数。
对于 IntelliJ,您可以查看此讨论

If providing a command-line argument is the main reason you are thinking about using some command-line runner. I can provide you with the following solution-

You can provide command-line arguments from IntelliJ/Netbeans IDE itself.
For IntelliJ, you can see this discussion

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文