
从官网(https://start.spring.io)下载springboot之后,启动未见异常,但是会自动退出,控制台信息如下:

遇见该问题,多半是因为官网自动生成的pom中包含了对tomcat依赖的再次声明,在此声明中(如下)修改scope为provided,在启动时与tomcat并未启动(容器),导致实际启动就是一个main方法。 默认生成的pom文件包含如下依赖:

查询springboot依赖可以在spring-boot-dependencies.2.2.2.RELEASE文件看到依赖如下:

scope的改变,相信看到这里也就明白为什么启动的时候没有toamcat的信息了。 解决办法很简单:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!-- 移除对Tomcat的内置依赖 -->
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>注:可能需要引入对javax.servlet-api的依赖(如果需要) **
高版本的springboot对此处有调整,需要注意的时,以下依赖必须包含一个
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>与
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>**