You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Cloud Gateway启动失败:routeDefinitionRouteLocator Bean创建异常

问题分析

这个启动错误的核心逻辑是:当网关同时引入Spring Security和自定义框架的Spring Security Core依赖时,Spring Cloud Gateway的自动配置被意外触发了gRPC相关过滤器(jsonToGRPCFilterFactory、grpcSslConfigurer)的创建流程,但项目中并未引入io.grpc.netty.NettyChannelBuilder所在的依赖包,最终导致类找不到的异常。

解决方案

1. 排除Gateway的gRPC自动配置类

直接阻止Spring创建不需要的gRPC相关Bean,是最直接的解决方式:

方式A:启动类注解排除

@SpringBootApplication(exclude = {
    GrpcSslAutoConfiguration.class,
    JsonToGrpcGatewayFilterAutoConfiguration.class
})
public class GatewayApplication {
    public static void main(String[] args) {
        SpringApplication.run(GatewayApplication.class, args);
    }
}

方式B:配置文件排除

在application.yml中添加:

spring:
  autoconfigure:
    exclude:
      - org.springframework.cloud.gateway.config.GrpcSslAutoConfiguration
      - org.springframework.cloud.gateway.config.JsonToGrpcGatewayFilterAutoConfiguration

2. 排查并移除冗余的gRPC依赖

通过依赖树工具找出间接引入的gRPC相关依赖,手动排除:

Maven操作

先查看依赖树:

mvn dependency:tree | grep grpc

如果发现自定义框架间接引入了gRPC依赖,在网关的pom.xml中排除:

<dependency>
    <groupId>你的自定义框架GroupId</groupId>
    <artifactId>你的自定义框架ArtifactId</artifactId>
    <exclusions>
        <exclusion>
            <groupId>io.grpc</groupId>
            <artifactId>grpc-netty</artifactId>
        </exclusion>
        <!-- 其他gRPC相关依赖可一并排除 -->
    </exclusions>
</dependency>

Gradle操作

先查看依赖树:

./gradlew dependencies | grep grpc

排除冗余依赖:

implementation('你的自定义框架GroupId:你的自定义框架ArtifactId') {
    exclude group: 'io.grpc', module: 'grpc-netty'
    // 其他gRPC相关依赖排除
}

3. 调整Security依赖作用域(可选)

如果自定义框架中的Spring Security Core仅提供工具类,不需要在网关中激活Security自动配置,可以将其依赖作用域设为非编译生效:

Maven

<dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-core</artifactId>
    <scope>provided</scope>
</dependency>

Gradle

compileOnly 'org.springframework.security:spring-security-core'

内容的提问来源于stack exchange,提问作者Harish Joshy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 16:53:23