SpringBoot 引入Jedis 报错:java.lang.ClassNotFoundException: redis.clients.util.SafeEncoder

参考:https://blog.csdn.net/taotao_guiwang/article/details/102519951

参考:https://blog.csdn.net/doubleqinyan/article/details/102688467

 

运行提示报错

Caused by: java.lang.NoClassDefFoundError: redis/clients/util/SafeEncoder
	at org.springframework.data.redis.connection.jedis.JedisConverters.lambda$static$1(JedisConverters.java:127)
	at org.springframework.data.redis.connection.jedis.JedisConverters.toBytes(JedisConverters.java:342)
	at org.springframework.data.redis.connection.jedis.JedisConverters.(JedisConverters.java:134)
	at org.springframework.data.redis.connection.jedis.JedisConnectionFactory.(JedisConnectionFactory.java:86)
	at com.dongriaf.framework.config.redis.RedisConfig.redisConnectionFactory(RedisConfig.java:80)
	at com.dongriaf.framework.config.redis.RedisConfig$$EnhancerBySpringCGLIB$$586d20c4.CGLIB$redisConnectionFactory$4()
	at com.dongriaf.framework.config.redis.RedisConfig$$EnhancerBySpringCGLIB$$586d20c4$$FastClassBySpringCGLIB$$cc5a24ea.invoke()
	at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:244)
	at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:363)
	at com.dongriaf.framework.config.redis.RedisConfig$$EnhancerBySpringCGLIB$$586d20c4.redisConnectionFactory()
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)
	... 113 common frames omitted
Caused by: java.lang.ClassNotFoundException: redis.clients.util.SafeEncoder
	at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 128 common frames omitted

 

把jedis的版本降低成2.9.1即可,3.1.0版本中没有redis.clients.util.SafeEncoder的类定义

改动前:

    
       redis.clients
       jedis
       3.1.0
    

改动后:

   
       redis.clients
       jedis
       2.9.1
   

 

你可能感兴趣的:(redis,java,springboot)