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
相关推荐
Grey Zeng2 小时前
Java SE 25新增特性
java·jdk·jdk新特性·jdk25
雨白4 小时前
Java 线程通信基础:interrupt、wait 和 notifyAll 详解
android·java
架构师沉默8 小时前
设计多租户 SaaS 系统,如何做到数据隔离 & 资源配额?
java·后端·架构
Java中文社群9 小时前
重要:Java25正式发布(长期支持版)!
java·后端·面试
每天进步一点_JL10 小时前
JVM 类加载:双亲委派机制
java·后端
用户2986985301411 小时前
Java HTML 转 Word 完整指南
java·后端
渣哥11 小时前
原来公平锁和非公平锁差别这么大
java
渣哥11 小时前
99% 的人没搞懂:Semaphore 到底是干啥的?
java
J2K11 小时前
JDK都25了,你还没用过ZGC?那真得补补课了
java·jvm·后端
kfyty72511 小时前
不依赖第三方,不销毁重建,loveqq 框架如何原生实现动态线程池?
java·架构