首页 > 解决方案 > spring boot 微服务应用程序 - 是否必须具有 main 方法

问题描述

我是 Spring Boot 微服务的新手。我用谷歌搜索了它。所有示例都使用以下方法
<pre>
public static void main(String[] args) {
        SpringApplication.run(sample.class, args);
    }
</pre>

商业项目是否也必须采用上述方法?

标签: spring-bootmicroservices

解决方案


任何可运行的 Java 程序或应用程序都必须具有main方法。

在 Java 编程语言中,每个应用程序都必须包含一个 main 方法,其签名是:

   public static void main(String[] args) 

这在这个Hello World教程中有记录。Spring Boot 应用程序只是一个核心的 Java 应用程序,具有许多功能,使人们更容易制作微服务、其他类型的 Web 应用程序和库。

通常打包为在应用程序中执行部分任务的 jar 文件的库或共享代码不一定要有main. 有时库确实有main用于测试或示例的。每个类都可以有main自己的一个。但是,应用程序只能从其中一个开始。另一个类中的main方法可以像任何其他方法一样在正在运行的程序中被调用,但只有一个main被调用来启动应用程序。

用于启动应用程序的main方法通常称为入口点Main-Class如果在 jar 文件的清单中定义了一个类,那么main该类中的方法将用作应用程序的入口点。系统JRE通常通过双击 jar 或通过 cli 命令(例如java -jar jarfilename.jar.

因此,如果要将代码打包到应用程序使用的库中,则不需要main. 如果您要创建一个独立的 Spring Boot 应用程序,您需要有一个main. Spring Boot 框架将能够使用它main来制作可运行的 jar 文件。


推荐阅读