Spring MVC found on classpath, which is incompatible with Spring Cloud Gateway.

报错信息

powershell 复制代码
Description:  
Spring MVC found on classpath, which is incompatible with Spring Cloud Gateway.  
Action:  
Please set spring.main.web-application-type=reactive or remove spring-boot-starter-web dependency.

解析

这个错误信息是因为你的项目中同时存在Spring MVC和Spring Cloud Gateway,这两者是不兼容的。

Spring Cloud Gateway是基于Spring WebFlux构建的,Spring WebFlux是一个非阻塞的反应式web框架,而Spring MVC是一个阻塞的框架,它包含在spring-boot-starter-web依赖中。 要解决这个问题,你需要做以下其中一项:

①:如果不需要,从你的pom.xml中移除spring-boot-starter-web依赖。

②:如果你在同一个应用中需要Spring MVC和Spring Cloud Gateway,你可以在你的application.yml或application.properties文件中将web应用类型设置为REACTIVE。

以下是如何在application.yml中将web应用类型设置为REACTIVE:

yaml 复制代码
spring:
  main:
    web-application-type: reactive
相关推荐
考虑考虑17 分钟前
JDK9中的dropWhile
java·后端·java ee
想躺平的咸鱼干26 分钟前
Volatile解决指令重排和单例模式
java·开发语言·单例模式·线程·并发编程
hqxstudying1 小时前
java依赖注入方法
java·spring·log4j·ioc·依赖
·云扬·1 小时前
【Java源码阅读系列37】深度解读Java BufferedReader 源码
java·开发语言
春生野草1 小时前
关于SpringMVC的整理
spring
Bug退退退1232 小时前
RabbitMQ 高级特性之重试机制
java·分布式·spring·rabbitmq
小皮侠2 小时前
nginx的使用
java·运维·服务器·前端·git·nginx·github
Zz_waiting.2 小时前
Javaweb - 10.4 ServletConfig 和 ServletContext
java·开发语言·前端·servlet·servletconfig·servletcontext·域对象
全栈凯哥2 小时前
02.SpringBoot常用Utils工具类详解
java·spring boot·后端
兮动人2 小时前
获取终端外网IP地址
java·网络·网络协议·tcp/ip·获取终端外网ip地址