redis报错NoSuchMethodError RedisTemplate.delete(Ljava/lang/Object;)V
报错:
原因分析:
NoSuchMethodError 表示运行时没有找到对应的方法,而这个方法在编译时并没有报错。
经过网上查找,大部分都说是版本问题,报错最后有一个V(void),表示找不到的这个方法是无返回值的,但是源码查看调用的确是有返回值的。
然后排查依赖包,果然发现springboot依赖了不同版本的spring-boot-starter-redis,一个1.4.7版本,一个2.1.6版本。估计是版本冲突了。
将1.4的排除掉,然后打包运行,就可以了。