redis怎么才能正常使用

java.lang.reflect.InaccessibleObjectException: Unable to make field private boolean java.lang.String.hashIsZero accessible: module java.base does not "opens java.lang" to unnamed module @21de60b4


评论区

杜福忠

2022-06-06 17:41

可以先写个栗子自己试试:
https://jfinal.com/doc/8-4

还有提问不能这样问啊。。。
工具都是什么版本,怎么启动的,怎么放的,怎么取的,至少得说明一下,不然别人怎么知道是怎么回事了?
看错误信息:
无法将字段专用布尔值设置为可访问的模块,找不到该命名的模块。

小菜鸟啊啊啊

2022-06-07 16:21

@杜福忠 感谢您的回复
我是这样用的:
Cache cache = Redis.use("test");
cache.set("test","test");
renderText(cache.get("test"));

jedis和fst用的官方文档里的:

redis.clients
jedis
2.7.2



de.ruedigermoeller
fst
2.29

运行报错:java.lang.NoClassDefFoundError: redis/clients/jedis/util/SafeEncoder
我的jdk是jdk1.8.0_291
这个初始的报错 我百度之后说是jedis版本低了 我尝试过升级jedis版本,但是仍然报错。
当我将jedis和fst更新到最新后

redis.clients
jedis
4.2.3



de.ruedigermoeller
fst
3.0.3

报这个错:
java.lang.UnsupportedClassVersionError: org/nustaq/serialization/FSTObjectOutput has been compiled by a more recent version of the Java Runtime (class file version 58.0), this version of the Java Runtime only recognizes class file versions up to 52.0

如果可以的话,麻烦您帮忙解疑

杜福忠

2022-06-07 16:47

插件的依赖版本,推荐使用JFinal 里的pom.xml版本号,可以少跳坑。
https://gitee.com/jfinal/jfinal/blob/master/pom.xml

小菜鸟啊啊啊

2022-06-08 11:11

换上对应版本的jedis和fst之后报这个错
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/pool2/impl/GenericObjectPoolConfig
我的配置是这样:
RedisPlugin douzhuRedis = new RedisPlugin("test","localhost");
me.add(douzhuRedis);
没有设置密码

杜福忠

2022-06-09 09:19

@小菜鸟啊啊啊 NoClassDefFoundError就是没有这个类。没用maven管理吧? 手动管理jar的话,下载下面这个zip,里面有个redis文件夹,把里面的jar 都拷贝到项目就可以了。
https://jfinal.com/download/now?file=jfinal-5.0.0-all.zip

小菜鸟啊啊啊

2022-06-10 09:00

@杜福忠 是用的maven管理的 好崩溃

杜福忠

2022-06-10 10:35

@小菜鸟啊啊啊 https://jfinal.com/share/2571

热门反馈

扫码入社