Spring Data Redis和Jedis兼容性问题

时间:2018-04-30 23:17:09

标签: redis spring-data jedis spring-data-redis redis-cluster

我正在尝试从RedisClusterConfiguration创建一个JedisConnection工厂(下面给出的伪代码)但是我面临编译时错误

  

无法解析redis.clients.jedis.JedisShardInfo类型。它是   间接引用所需的.class文件。

代码段:

RedisClusterConfiguration clusterConfiguration = new RedisClusterConfiguration(clusterList);
return new JedisConnectionFactory(clusterConfiguration);

正在使用的Spring Data Redis版本:2.0.6.RELEASE

2 个答案:

答案 0 :(得分:2)

正如您在此处所见:https://github.com/spring-projects/spring-data-redis/blob/master/pom.xml#L75

将Jedis客户端设置为可选依赖项。

在您自己的项目中,您需要导入Jedis客户端。如果使用Maven:

<dependency>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
    <version>2.9.0</version>
    <type>jar</type>
</dependency>

Jedis客户端是必要的,因为Spring Data Redis是一个支持多个驱动程序的伞形项目(Jedis,Lettuce ...)。导入所有驱动程序将非常麻烦。由你来决定使用什么驱动程序。

答案 1 :(得分:0)

您可以在spring-data-redis的pom中签入它正在使用的jedis的哪个版本,并开始使用它。这样可以保证没有冲突。