dianping / cat

CAT 作为服务端项目基础组件,提供了 Java, C/C++, Node.js, Python, Go 等多语言客户端,已经在美团点评的基础架构中间件框架(MVC框架,RPC框架,数据库框架,缓存框架等,消息队列,配置系统等)深度集成,为美团点评各业务线提供系统丰富的性能指标、健康状况、实时告警等。
Apache License 2.0
18.63k stars 5.42k forks source link

java.lang.NoSuchMethodError: java.nio.MappedByteBuffer.rewind()Ljava/nio/MappedByteBuffer; #2297

Closed M1sury closed 1 year ago

M1sury commented 1 year ago

JDK版本:8 Tomcat版本:8.5.90 SpringBoot版本:2.3.12 项目已经上传到Github了,拉下来就可以启动:https://github.com/M1sury/cat-demo image image 日志文件并没有什么有用的信息。 可以帮忙看一下是什么原因吗?

everiu commented 1 year ago

报错信息的MessageIdFacotory.saveMark()的功能是在项目路径(默认/data/appdatas/cat)保存一个标志文件,用来保存一些元数据信息,因此会调用RandomAccessFile读写文件。报错内容是JDK自带的文件读写方法找不到,看了一些解答,看起来跟JDK的实现会有关,这个链接可以参考下

https://stackoverflow.com/questions/61267495/exception-in-thread-main-java-lang-nosuchmethoderror-java-nio-bytebuffer-flip

另外看起依赖的cat-client的版本是3.0.0,感觉可以升级下到3.0.1或者3.1.0看下是否还会有问题

https://mvnrepository.com/artifact/com.dianping.cat/cat-client

M1sury commented 1 year ago

好的,非常感谢,升级3.0.1之后就没有报错了。 image