为了账号安全,请及时绑定邮箱和手机立即绑定

在java 8中与lettuce建立redis连接的正确方法

在java 8中与lettuce建立redis连接的正确方法

慕的地6264312 2023-08-04 19:03:34
我正在尝试构建一个 Denodo java 存储过程,通过 lettuce 与 redis 进行通信。我正在使用 Denodo 推荐的 Denodo 4e eclipse 扩展和氧气。我显然遗漏了一些东西,因为所有文档都表明int port = 6379;String host = "127.0.0.1";RedisURi uri = RedisURI.Builder.redis(host,port).withDatabase(1).build();RedisClient client = RedisClient.create(uri);和RedisClient client = RedisClient.create("redis://localhost:6379");抛出的错误被调试方法掩盖了,我所知道的是,在第一个实例中,构建器失败,在第二个实例中,客户端失败。当我调用 redis-cli 时,我看到 redis 正在 127.0.0.1:6379> 运行,并且能够获取我设置的测试密钥。user@system:~$ redis-cli127.0.0.1:6379> get datum1"datum2"我使用默认的 redis.conf 并在同一台机器上运行 eclipse、denodo 和 redis。redis.conf 中的绑定为 127.0.0.1 ::1 超时已禁用 (0)我通常不使用 Java 进行开发,所以我希望我显然做错了什么,而不是必须在非 denodo 项目中实际执行此操作并整理出正确的构建和调试。
查看完整描述

1 回答

?
一只甜甜圈

TA贡献1836条经验 获得超5个赞

对于刚接触 java 或 Denodo 的人来说,这里有一些菜鸟错误。

Java 的错误是使用了 catch 异常,它显然并不能捕获所有内容。转向 catch throwable 让我获得了有用的堆栈跟踪,尽管我知道在调试之外不建议这样做,因为 catch throwable 还会捕获底层 JVM 错误以及您在代码中无需处理的内容。

根本问题是依赖项的 Java.Lang.ClassNotFoundException。

Denodo 的错误是 Denodo 中的 Java 存储过程要么需要导入依赖项 jar,要么应该使用 uber(?)/fat(?) jar。

我使用 maven 程序集插件来使用 maven 进行构建,而不是使用 denodo4e 部署工具,然后将 jar 复制到 denodo home 下的 procs 文件夹中,并在 VDP 管理中创建新的存储过程时浏览到它。


查看完整回答
反对 回复 2023-08-04
  • 1 回答
  • 0 关注
  • 87 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信