使用Redis启动报错:
org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'redisTemplate' defined in class path resource [applicationContext.xml]: Cannot resolve reference to bean 'jedisConnFactory' while setting bean property 'connectionFactory';
nested exception is org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'jedisConnFactory' defined in class path resource [applicationContext.xml]: Instantiation of bean failed;
nested exception is org.springframework.beans.BeanInstantiationException:
Failed to instantiate [org.springframework.data.redis.connection.jedis.JedisConnectionFactory]:
Constructor threw exception;
nested exception is java.lang.NoSuchMethodError: org.springframework.util.Assert.isTrue(ZLjava/util/function/Supplier;)V
当前pom配置的版本:
<jedis-version>2.9.0</jedis-version>
<spring-data-redis-version>2.1.0.RELEASE</spring-data-redis-version>
spring-data-redis-version换到1.8.4.RELEASE。问题解决。
如何快读定位是版本的兼容问题,确实是靠经验哇。
看了下,org.springframework.util.Assert.isTrue()方法至少在2.5就有了,可能版本更新,调整了下。高版本调用的是新增方法。
问题解决来源