Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. 2020-12-03 11:28:44.097 ERROR 75242 --- [ main] o.s.boot.SpringApplication : Application run failed org.springframework.context.ApplicationContextException: Unable to start web server; nested exception is org.springframework.context.ApplicationContextException: Unable to start ServletWebServerApplicationContext due to missing ServletWebServerFactory bean. at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:156) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:545) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:141) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:747) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397) at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215) at com.wwl.consumer.ConsumerApplication.main(ConsumerApplication.java:18) Caused by: org.springframework.context.ApplicationContextException: Unable to start ServletWebServerApplicationContext due to missing ServletWebServerFactory bean. at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.getWebServerFactory(ServletWebServerApplicationContext.java:203) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.createWebServer(ServletWebServerApplicationContext.java:179) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:153) ... 8 common frames omitted Disconnected from the target VM, address: '127.0.0.1:63226', transport: 'socket' Process finished with exit code 1
大概意思是springboot找不到内嵌的tomcat 未能加载嵌入的供web应用加载的空间,是因为缺少ServletWebServerFactory bean。 至于为啥找不到有点奇怪
pom.xml 配置
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions><!-- 去掉springboot默认配置 --> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency>
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency>
用两个方案可以解决 (在我这个问题上)
1. 去除tomcat的<scope>provided</scope> 标签
2. 在application.yml里面配置spring.main.web-application-type=none
具体原因还带排查
网上还有人说@SpringbootApplication 注解 和 @EnableAutoConfiguation 注解的
这是spring启动最基础的注解
@SpringbootApplication 包含了 @EnableAutoConfiguation 注解的
很多一些第三方依赖自动配置注入spring容器都是靠 @EnableAutoConfiguation 注解实现的
相关推荐
总结来说,Spring Boot整合Mybatis-Plus时启动报错的主要原因是Mapper接口没有被正确地扫描和注册为bean。通过在启动类上使用`@MapperScan`或在每个Mapper接口上使用`@Mapper`注解,可以有效地解决这个问题。同时,...
2. **选择起步依赖**:在 `pom.xml` 文件中,添加 `spring-boot-starter-web` 作为起步依赖,这将包含 Spring MVC 和 Tomcat 服务器。 3. **编写主类**:创建一个类并使用 `@SpringBootApplication` 注解,这个注解...
Spring Boot项目通常期望有一个明确的启动入口,即带有`@SpringBootApplication`注解的类,这个注解集成了`@Configuration`,`@EnableAutoConfiguration`和`@ComponentScan`,是Spring Boot应用的核心。在本例中,有...
《Spring Boot异常处理器详解》 在Java开发领域,Spring Boot以其简洁、高效的特性深受开发者喜爱。在实际项目中,处理异常是必不可少的一部分,Spring Boot为此提供了强大的异常处理机制。本篇将深入探讨Spring ...
2. **内嵌Web服务器**:Spring Boot支持内嵌Tomcat、Jetty或Undertow等Web服务器,无需额外进行部署操作。 3. ** Starter POMs**:Spring Boot提供了很多Starter POMs,如`spring-boot-starter-web`、`spring-boot-...
2. **Tomcat配置问题**:如果Tomcat服务器没有正确配置来识别Spring Boot项目中的JSP资源,则可能导致404错误。 3. **路径问题**:JSP文件的存储位置或访问路径不正确。 #### 解决方案 为了有效解决上述问题,我们...
### MySQL 数据库在 Spring Boot 项目中启动报错问题解析 #### 错误信息解读 在给定的信息中,我们注意到一个具体的错误信息:...
Springboot启动报错时实现异常定位 Spring Boot是一个由Pivotal团队提供的...本文主要介绍了Spring Boot启动报错时实现异常定位的方法,通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值。
在Spring Boot应用中,日志系统是至关重要的组成部分,它帮助开发者记录应用程序的运行状态、错误信息以及调试信息。Logback是Spring Boot默认的日志实现,然而,在配置或使用过程中,可能会遇到各种问题,比如本题...
Quartz Scheduler的Spring-Boot自动配置只是Quartz Scheduler的Spring-Boot启动器。 当然,Quartz Scheduler已经有好几个启动器,但是它们都不能满足我的所有需求,因此我创建了自己的启动器。 这只是一个业余项目。...
Spring Boot 启动报错 "Failed to determine a suitable driver class" 解决方案 在 Spring Boot 应用程序中,启动报错 "Failed to determine a suitable driver class" 是一个常见的问题。本文将详细介绍该错误的...
Spring Boot作为一个流行的Java开发框架,提供了丰富的安全特性来帮助开发者构建安全的应用。本文将深入探讨如何在Spring Boot项目中利用PBEWITHHMACSHA512ANDAES-128算法对配置文件中的密码进行加密。 首先,让...
SpringCloud作为一套微服务解决方案,提供了丰富的工具集,其中包括Eureka,它是Netflix开发的服务注册与发现组件。本文将深入探讨如何在SpringBoot项目中集成SpringCloud Eureka,实现服务的注册与发现。 首先,...
总的来说,Spring Boot启动时MyBatis报循环依赖的错误可能是由于`spring-boot-devtools`与自动配置的冲突,或者是配置文件中的MyBatis配置不完整或不正确。通过理解Spring Boot的运行机制,检查并修复配置,通常能...
通过自动配置特性,Spring Boot允许开发者快速启动并运行应用,而无需进行大量的配置工作。 Mybatis则是一个轻量级的Java持久层框架,它提供了灵活的SQL映射机制,使得开发者可以直接编写SQL语句,避免了JDBC的繁琐...
在Spring Boot框架中,`spring-boot-test`模块是专门用于测试Spring Boot应用的工具集,它简化了单元测试和集成测试的过程。这个模块包含了多种测试相关的依赖,如JUnit、Mockito、Spring Test以及Spring Boot的测试...
* `spring.main.show-banner`:是否显示启动Banner,默认为true。 Logging * `logging.path`:日志文件的路径,默认为`/var/logs`。 * `logging.file`:日志文件的名称,默认为`myapp.log`。 * `logging.config`:...
这个注解是Swagger2提供的,用于启动Spring Boot应用中的Swagger2功能。它告诉Spring Boot应用要扫描哪些包,以便发现和构建API的元数据。当遇到报错时,最常见的原因可能是依赖冲突、配置错误或者缺少必要的依赖。 ...
在Spring Boot应用中,日志配置是一个至关重要的环节,因为它对于系统的监控、调试以及问题排查起着关键作用。本文将详细介绍如何在Spring Boot中配置日志系统,包括默认的日志系统、如何打印日志以及如何将日志信息...
Spring Boot的Starter启动器是指Spring Boot提供的一些starter pom,它们可以帮助开发者快速搭建一个Spring Boot应用程序。 Starter启动器可以自动配置应用程序的依赖关系和配置文件。 全局配置文件 Spring Boot的...