添加Gateway依赖后启动报错Consider defining a bean of type ‘org.springframework.http.codec.ServerCodecConfigur

在给其他微服务添加网关Gateway时,在给Gateway项目添加Gateway依赖时,项目无法启动

问题为:

考虑在配置中增加org.springframework.http.codec.ServerCodecConfigurer。

添加Gateway依赖后启动报错Consider defining a bean of type ‘org.springframework.http.codec.ServerCodecConfigur

一般我们在web项目中都会添加spring-boot-starter-web和spring-boot-starter-actuator的依赖用于项目的监控。

但问题就在这里,我把这两个依赖注释掉之后再次启动项目即可恢复正常。

添加Gateway依赖后启动报错Consider defining a bean of type ‘org.springframework.http.codec.ServerCodecConfigur

正常启动

添加Gateway依赖后启动报错Consider defining a bean of type ‘org.springframework.http.codec.ServerCodecConfigur 

 

问题总结:

在网上翻阅关于Gateway与Web依赖冲突的问题,总结问题原因

Gateway与Zuul不一样,Gateway用的是长连接,使用非阻塞的netty-webflux,Zuul的底层是使用Springmvc,基于servlet2.5,所以在Gateway的项目中是不能添加spring-boot-starter-web的依赖,而actuator的依赖一般与web一同出现,所以就一并注释掉。

相关问题:

也有同学遇到报错为:

springmvc found on classpath which is incompatible with spring cloud gateway at this time Please remove spring-boot-starter-web dependency

这个报错就很明白了,Gateway和web依赖不兼容,请移除依赖。

希望以上的总结可以帮助到正在学习Gateway的同学。

 

上一篇:Android学习笔记_66_图片处理专题


下一篇:Cannot create Launcher without at least one TestEngine; consider adding an engine implementation JAR