Bug记录:解决canal配合rocketMQ启动时报错
canal
alibaba/canal: Canal 是由阿里巴巴开源的分布式数据库同步系统,主要用于实现MySQL数据库的日志解析和实时增量数据订阅与消费,广泛应用于数据库变更消息的捕获、数据迁移、缓存更新等场景。
项目地址:https://gitcode.com/gh_mirrors/ca/canal
免费下载资源
·
情况描述
使用canal1.1.7配合rocketMQ4.9.4使用来实现mysql数据同步,启动canal时一直闪退,查log日志发现报错信息如下:
2024-01-20 15:53:02.359 [main] ERROR com.alibaba.otter.canal.deployer.CanalLauncher - ## Something goes wrong when starting up the canal Server:
java.lang.IllegalStateException: Extension instance(name: rocketmq, class: interface com.alibaba.otter.canal.connector.core.spi.CanalMQProducer) could not be instantiated: class could not be found
at com.alibaba.otter.canal.connector.core.spi.ExtensionLoader.createExtension(ExtensionLoader.java:169)
at com.alibaba.otter.canal.connector.core.spi.ExtensionLoader.getExtension(ExtensionLoader.java:121)
at com.alibaba.otter.canal.deployer.CanalStarter.start(CanalStarter.java:69)
at com.alibaba.otter.canal.deployer.CanalLauncher.main(CanalLauncher.java:124)
解决方法
从log来看判断是CanalMQProducer这个类无法实例化,于是开始检查canal中关于rocketMQ的设置,最后发现原来是需要把plugin文件夹中的jar包拷到lib文件夹下,问题解决。
好无语的bug
GitHub 加速计划 / ca / canal
28.22 K
7.57 K
下载
alibaba/canal: Canal 是由阿里巴巴开源的分布式数据库同步系统,主要用于实现MySQL数据库的日志解析和实时增量数据订阅与消费,广泛应用于数据库变更消息的捕获、数据迁移、缓存更新等场景。
最近提交(Master分支:3 个月前 )
1e5b8a20 - 2 个月前
ff82fd65
2 个月前
更多推荐
已为社区贡献2条内容
所有评论(0)