pnwilson 2023-02-17 14:31 采纳率: 0%
浏览 45

Win下RocketMQ启动报错

RocketMQ,运行时报VM的一些选项错误,忽略后,运行报以下错误:

java.lang.IllegalAccessError: class org.apache.rocketmq.common.UtilAll (in unnamed module @0x5403f35f) cannot access class sun.nio.ch.DirectBuffer (in module java.base) because module java.base does not export sun.nio.ch to unnamed module @0x5403f35f
        at org.apache.rocketmq.common.UtilAll.viewed(UtilAll.java:720)
        at org.apache.rocketmq.common.UtilAll.cleanBuffer(UtilAll.java:684)
        at org.apache.rocketmq.store.logfile.DefaultMappedFile.cleanup(DefaultMappedFile.java:470)
        at org.apache.rocketmq.store.ReferenceResource.release(ReferenceResource.java:63)
        at org.apache.rocketmq.store.ReferenceResource.shutdown(ReferenceResource.java:47)
        at org.apache.rocketmq.store.logfile.DefaultMappedFile.destroy(DefaultMappedFile.java:481)
        at org.apache.rocketmq.store.index.IndexFile.destroy(IndexFile.java:97)
        at org.apache.rocketmq.store.index.IndexService.load(IndexService.java:72)

下载了源码,最后定位到以下错误:

private static ByteBuffer viewed(ByteBuffer buffer) {
        if (!buffer.isDirect()) {
            throw new IllegalArgumentException("buffer is non-direct");
        }
        DirectBuffer dd=(DirectBuffer) buffer;//这句错了。
        
        ByteBuffer viewedBuffer = (ByteBuffer) (dd).attachment();
        if (viewedBuffer == null) {
            return buffer;
        } else {
            return viewed(viewedBuffer);
        }
    }

看上去是ByteBuffer转换成DirectBuffer出错,怎么办?RocketMQ应该不会有此错误,是有什么选项要配置?JDK是最新版本。

  • 写回答

4条回答 默认 最新

  • GameTomato 2023-02-17 15:11
    关注

    看你那个报错信息,像是由于 JDK 9 或更高版本中的模块化系统引起的。

    可以试试在启动脚本中添加以下参数:

    --add-exports java.base/sun.nio.ch=org.apache.rocketmq.common
    

    也可以试试将JDK升级到最新版本,以确保与RocketMQ兼容的JDK版本

    如果上述方法无法解决问题,可以尝试使用 JDK 8 或更早版本,并确保运行时环境的设置正确。也可以尝试升级到最新版本的RocketMQ。

    希望能帮到你~~~

    评论

报告相同问题?

问题事件

  • 创建了问题 2月17日

悬赏问题

  • ¥15 在获取boss直聘的聊天的时候只能获取到前40条聊天数据
  • ¥20 关于URL获取的参数,无法执行二选一查询
  • ¥15 液位控制,当液位超过高限时常开触点59闭合,直到液位低于低限时,断开
  • ¥15 marlin编译错误,如何解决?
  • ¥15 有偿四位数,节约算法和扫描算法
  • ¥15 VUE项目怎么运行,系统打不开
  • ¥50 pointpillars等目标检测算法怎么融合注意力机制
  • ¥20 Vs code Mac系统 PHP Debug调试环境配置
  • ¥60 大一项目课,微信小程序
  • ¥15 求视频摘要youtube和ovp数据集