java - Jedis 中的响应对象 - 抛出 ClassCastException

标签 java response sync pipeline jedis

在 Jedis 中使用响应对象,抛出 ClassCastException 。当我使用管道时,我无法从 Redis 获得任何值(value)。请帮忙。我正在使用 Jedis 2.1.0

public class JedisPipeline {    
    public static void main(String args[]){
        final JedisPool pool = new JedisPool(new JedisPoolConfig(), "127.0.0.1", 6379);
        Jedis jedis = pool.getResource();
        Pipeline pipeline = jedis.pipelined();
        pipeline.multi();
        HashMap<String,String> map = new HashMap<String,String>();
        map.put("50", "50");
        pipeline.hmset("Id",map);
        Response <Long> incr = pipeline.hincrBy("Id", "100", 100);
        Response<Map<String,String>> map1 = pipeline.hgetAll("Id");
        pipeline.exec();
        List<Object> results = pipeline.syncAndReturnAll();
        System.out.println(results);
        System.out.println( incr.get());
        System.out.println( map1.get());
        pool.returnResource(jedis);
        pool.destroy();
    }
}

Exception in thread "main" java.lang.ClassCastException: [B cannot be cast to java.lang.Long
    at redis.clients.jedis.BuilderFactory$4.build(BuilderFactory.java:45)
    at redis.clients.jedis.BuilderFactory$4.build(BuilderFactory.java:48)
    at redis.clients.jedis.Response.get(Response.java:27)
    at redis.clients.jedis.Pipeline.syncAndReturnAll(Pipeline.java:42)
    at com.work.jedis.JedisPipeline.main(JedisPipeline.java:28)

最佳答案

我使用的 jar 文件有冲突。我在构建路径中错误地保留了 jedis 2.1.0 和 jedis 2.0.0。

关于java - Jedis 中的响应对象 - 抛出 ClassCastException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16152748/

相关文章:

ios - dispatch_sync里面的dispatch_sync导致死锁

java - 遍历 pig 中的数组

java - 如何在 JAVA 中创建发送图像的 HTTP 响应?

javascript - Nodejs无法杀死Node本身执行的外部Windows可执行程序

Django 多个数据库 - 一个并不总是可用

android - 将 android 应用程序与来自网站的数据库连接

java - 制作一个方法将不同的方法分别放在一个for循环中?

java - 更新超过 10K 条记录时出现 Hibernate 性能问题

java - 重定向表单 jsf 托管 bean 并根据托管 bean 中的条件显示 js 警报

php - 如何从 Laravel 中的 mysql 数据库检索日期范围内的数据?