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

Spring应用Redis替换JDBC会话管理启动出现NoSuchMethodError求助

问题原因与解决建议

这个NoSuchMethodError本质是Spring Session Data Redis、Spring Data Redis和Jedis三者版本不兼容导致的API调用冲突:

  • Spring Session Data Redis 2.2.2.RELEASE依赖的Spring Data Redis 2.x版本中,RedisConnection.getConfig(String)方法返回java.util.List,但你使用的Jedis 3.10.0对应的Spring Data Redis版本已经修改了该方法的返回类型或签名,导致运行时找不到匹配的方法。

具体解决步骤:

  • 版本对齐方案二选一
    1. 降级Jedis到兼容版本:Spring Session Data Redis 2.2.x适配的Jedis最高稳定版本是2.9.3,直接在依赖管理中指定该版本,同时确保Spring Data Redis版本和Spring Session保持一致(2.2.x系列)。
    2. 升级Spring Session Data Redis:如果想保留Jedis 3.10.0,需要将Spring Session Data Redis升级到2.6.x及以上版本(该版本开始适配Jedis 3.x),同时同步升级Spring Data Redis到对应版本(2.6.x系列)。
  • 排查依赖冲突
    执行依赖树命令查看是否有其他依赖引入了不兼容的版本:
    • Maven:mvn dependency:tree
    • Gradle:./gradlew dependencies
      发现冲突后,在对应依赖中排除掉不兼容的Spring Data Redis或Jedis包。
  • 避免自定义Bean的API冲突
    如果项目中自定义了Redis相关配置Bean(比如RedisKeyspaceNotificationsInitializer),检查代码中是否调用了过时或版本不匹配的API,替换为当前依赖版本支持的方法。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 01:15:58