JAVA-spring boot 2.4.X报错Unable to find GatewayFilterFactory with name Hystrix

网关升级spring boot项目后,启动网关报错,具体报错信息如下:

2021-12-06 09:06:25.335 ERROR 45102 --- oundedElastic-3 reactor.core.publisher.Operators : Operator called default onErrorDropped

reactor.core.Exceptions$ErrorCallbackNotImplemented: java.lang.IllegalArgumentException: Unable to find GatewayFilterFactory with name Hystrix

Caused by: java.lang.IllegalArgumentException: Unable to find GatewayFilterFactory with name Hystrix

at org.springframework.cloud.gateway.route.RouteDefinitionRouteLocator.loadGatewayFilters(RouteDefinitionRouteLocator.java:130) ~spring-cloud-gateway-server-3.0.1.jar:3.0.1

at org.springframework.cloud.gateway.route.RouteDefinitionRouteLocator.getFilters(RouteDefinitionRouteLocator.java:172) ~spring-cloud-gateway-server-3.0.1.jar:3.0.1

at org.springframework.cloud.gateway.route.RouteDefinitionRouteLocator.convertToRoute(RouteDefinitionRouteLocator.java:117) ~spring-cloud-gateway-server-3.0.1.jar:3.0.1

at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:106) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxFlatMap$FlatMapMain.tryEmitScalar(FluxFlatMap.java:487) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxFlatMap$FlatMapMain.onNext(FluxFlatMap.java:420) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxMergeSequential$MergeSequentialMain.drain(FluxMergeSequential.java:432) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxMergeSequential$MergeSequentialMain.innerNext(FluxMergeSequential.java:304) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxMergeSequential$MergeSequentialInner.onNext(FluxMergeSequential.java:571) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:120) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxFilter$FilterSubscriber.onNext(FluxFilter.java:113) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxMap$MapConditionalSubscriber.onNext(FluxMap.java:220) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxFilter$FilterConditionalSubscriber.onNext(FluxFilter.java:247) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxFlatMap$FlatMapMain.drainLoop(FluxFlatMap.java:711) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxFlatMap$FlatMapMain.drain(FluxFlatMap.java:587) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxFlatMap$FlatMapInner.onNext(FluxFlatMap.java:993) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1771) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.MonoCollectList$MonoCollectListSubscriber.onComplete(MonoCollectList.java:128) reactor-core-3.4.2.jar:3.4.2

at org.springframework.cloud.commons.publisher.FluxFirstNonEmptyEmitting$FirstNonEmptyEmittingSubscriber.onComplete(FluxFirstNonEmptyEmitting.java:325) spring-cloud-commons-3.0.1.jar:3.0.1

at reactor.core.publisher.FluxSubscribeOn$SubscribeOnSubscriber.onComplete(FluxSubscribeOn.java:165) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxIterable$IterableSubscription.fastPath(FluxIterable.java:360) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxIterable$IterableSubscription.request(FluxIterable.java:225) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxSubscribeOn$SubscribeOnSubscriber.requestUpstream(FluxSubscribeOn.java:130) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxSubscribeOn$SubscribeOnSubscriber.onSubscribe(FluxSubscribeOn.java:123) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:164) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:86) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.Flux.subscribe(Flux.java:8147) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxFlatMap.trySubscribeScalarMap(FluxFlatMap.java:199) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.MonoFlatMapMany.subscribeOrReturn(MonoFlatMapMany.java:49) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxFromMonoOperator.subscribe(FluxFromMonoOperator.java:76) reactor-core-3.4.2.jar:3.4.2

at reactor.core.publisher.FluxSubscribeOn$SubscribeOnSubscriber.run(FluxSubscribeOn.java:193) reactor-core-3.4.2.jar:3.4.2

at reactor.core.scheduler.WorkerTask.call(WorkerTask.java:84) reactor-core-3.4.2.jar:3.4.2

at reactor.core.scheduler.WorkerTask.call(WorkerTask.java:37) reactor-core-3.4.2.jar:3.4.2

at java.util.concurrent.FutureTask.run(FutureTask.java:266) na:1.8.0_301

at java.util.concurrent.ScheduledThreadPoolExecutorScheduledFutureTask.access201(ScheduledThreadPoolExecutor.java:180) na:1.8.0_301

at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) na:1.8.0_301

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) na:1.8.0_301

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) na:1.8.0_301

第一个解决方法

去掉application.yml配置default-filters配置即可

spring:

cloud:

gateway:

discovery:

locator:

enabled: true

default-filters:

- name: Hystrix

args:

name : default

fallbackUri: 'forward:/defaultFallback'

第二个方法

自定义过滤器整合hystrix:重新实现一遍HystrixGatewayFilterFactory

相关推荐
编程的一拳超人6 分钟前
Maven 国内高速镜像推荐(按速度排序)
java·maven
云烟成雨TD33 分钟前
Spring AI 1.x 系列【61】Spring AI 2.0 升级指南
java·人工智能·spring
lulu12165440781 小时前
OpenRouter Fusion 多模型融合架构深度拆解:预算级模型组团打平 Fable 5,多模型协作才是 AGI 的正确打开方式?
java·人工智能·架构·ai编程·agi
雨辰AI1 小时前
生产级实测:SpringBoot3 + 达梦数据库接口从 200ms 优化至 20ms 完整调优指南
java·数据库·spring boot·后端·政务
(Charon)2 小时前
【C++ 面试高频:内存管理、RAII 和智能指针详解】
java·开发语言·word
凡人叶枫2 小时前
Effective C++ 条款39:明智而审慎地使用 private 继承
java·数据库·c++·嵌入式开发
轻刀快马3 小时前
跨越软硬件的共鸣(二):从 Cache 写策略看 Redis 与 DB 的一致性博弈
java·开发语言·redis·计算机组成原理
折哥的程序人生 · 物流技术专研3 小时前
Java 23 种设计模式:从踩坑到精通 | 装饰器模式 —— 比继承更灵活的扩展方式,你用过吗?
java·装饰器模式·java面试·结构型模式·java设计模式·javaio·从踩坑到精通
lili00123 小时前
2026 企业 AI 选型新范式:OpenRouter Fusion 证明多模型融合性价比远超单模型,企业该如何重构技术栈? - 微元算力(weytoken)
java·人工智能·python·重构·ai编程