org.apache.rocketmq.client.exception.MQClientException: No route info of this topic

问题描述:

今天使用Java代码给RocketMQ发送消息,报错如下
org.apache.rocketmq.client.exception.MQClientException: No route info of this topic_第1张图片

org.apache.rocketmq.client.exception.MQClientException: No route info of this topic

翻译过来就是没有路由信息再这个topic上
查询资料发现,我的rockmq中并没有叫myTopic的主题,我启动broker的时候是通过点击cmd文件启动的,没有指名broker自动创建主题,所以我们应该通过命令去启动,加上参数 autoCreateTopicEnable=true,也就是开启自动创建主题,这样的话就可以了

想到这恍然大悟,我是通过双击broker启动的,没有通过命令行指定要自动创建topic!

解决方案:

首先要保证你的broker和nameServer服务是开启的!

使用命令启动

mqbroker.cmd -n localhost:9876 autoCreateTopicEnable=true

org.apache.rocketmq.client.exception.MQClientException: No route info of this topic_第2张图片
重启完之后broker,再次运行代码发送消息就完事了
org.apache.rocketmq.client.exception.MQClientException: No route info of this topic_第3张图片

可以通过控制台输出的result查询消息,也可以去rocketmq可视化页面查看(前提是需要安装,这个以后我会出一个文章的)

查看主题
org.apache.rocketmq.client.exception.MQClientException: No route info of this topic_第4张图片

查看消息通过主题筛选消息

org.apache.rocketmq.client.exception.MQClientException: No route info of this topic_第5张图片

你可能感兴趣的:(Java,报错,RoekctMQ,java,中间件)