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

Spring Boot从2.7.6升级到3.0.0后BindingsEndpoint无法自动装配

解决Spring Boot 3升级后BindingsEndpoint自动装配失效问题

问题原因

Spring Boot 3.x对应Spring Cloud Stream 4.x版本,该版本中**org.springframework.cloud.stream.endpoint.BindingsEndpoint已被移除**,替换为org.springframework.cloud.stream.binding.BindingsEndpointV2,因此自动装配旧类会抛出NoSuchBeanDefinitionException。

解决方案

  1. 替换依赖类
    将代码中所有引用BindingsEndpoint的地方替换为BindingsEndpointV2,示例:

    // 旧代码
    @Autowired
    private BindingsEndpoint bindingsEndpoint;
    
    // 新代码
    @Autowired
    private BindingsEndpointV2 bindingsEndpoint;
    
  2. 确认依赖版本匹配
    确保Spring Cloud与Spring Boot版本对应:

    • Spring Boot 3.x → Spring Cloud 2022.0.x(Kilburn)及以上
    • Spring Cloud Stream 4.x及以上
      检查pom.xml或build.gradle中的依赖版本,避免版本不兼容。
  3. 配置Actuator端点(若需外部访问)
    如果需要通过Actuator暴露绑定端点,在配置文件中添加:

    management:
      endpoints:
        web:
          exposure:
            include: bindings
    

    同时确保已引入Spring Boot Actuator依赖:

    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>
    

官方参考

Spring Cloud Stream 4.x迁移文档中明确了该端点的变更,核心是旧端点类被废弃移除,使用新的V2版本端点替代。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 10:30:53