0
点赞
收藏
分享

微信扫一扫

idea配置RocketMQ本地开发环境


环境

  • idea: IntelliJ IDEA 2022.1.2 (Ultimate Edition)
  • 操作系统:win10
  • rocketmq 版本:4.9.5 (当时从github拉取的最新代码)

前言

rocketmq在idea中开发的配置方式,早期的版本与现在版本配置参数是否完全一样,我也记不太清了,下文以4.9.5版本进行说明。

idea用的也是最新版本,可能与2021之前的版本在环境变量配置的界面也有点不太一样。

代码与工程准备

下载代码:

git clone https://github.com/apache/rocketmq.git

默认拉取下来是master分支,可以切换到develop分支。如果需要提交pr,请再从develop拉取自己的本地分支。

用idea打开代码。

模块说明

idea配置RocketMQ本地开发环境_java-rocketmq

 主要需要在idea启动中运行namesrv和broker两个模块,这两个模块下有相关的启动函数。

运行namesrv

启动类路径:

org.apache.rocketmq.namesrv.NamesrvStartup

启动前设置相关环境变量,有如下两种方式:

1. 硬编码

System.setProperty(MixAll.ROCKETMQ_HOME_PROPERTY, "G:\\java\\github\\rocketmq\\distribution");

idea配置RocketMQ本地开发环境_rocketmq_02

注意指定的目录是在distrbution模块下:

idea配置RocketMQ本地开发环境_intellij-idea_03

  

2. idea设置

  1. 方式一
  2. idea配置RocketMQ本地开发环境_intellij-idea_04

  3. 方式二
  4. idea配置RocketMQ本地开发环境_rocketmq_05

 这两种随便哪种即可。

配置完成,直接运行即可,启动成功如下:

idea配置RocketMQ本地开发环境_intellij-idea_06

运行broker

启动类路径:

org.apache.rocketmq.broker.BrokerStartup

配置环境变量,配置方式与上面namesrv一模一样。

配置进程参数,如下指定配置文件:

idea配置RocketMQ本地开发环境_java-rocketmq_07

 注意指定broker配置文件。

启动,成功如下:

idea配置RocketMQ本地开发环境_java-rocketmq_08

其它问题

多个slf4j实现

启动broker遇到如下错误:

idea配置RocketMQ本地开发环境_ide_09

分析了下,冲突的地方是在dledger的依赖里:

idea配置RocketMQ本地开发环境_java-rocketmq_10

排除它,问题解决:

idea配置RocketMQ本地开发环境_intellij-idea_11

未指定broker配置文件

前面说明了启动broker配置进程参数指定配置文件,示例如下:

-c G:\java\github\rocketmq\distribution\conf\broker.conf

 如果忘了指定,启动后,控制台日志显示可能如下:

idea配置RocketMQ本地开发环境_rocketmq_12

broker名称不是配置文件里的名称,可能是主机名,windows、mac、linux这里显示可能有些区别。

如果发现自己的配置文件的配置不生效,总有些奇怪现象,比如禁止自动创建topic,配置不生效等, 就查看启动日志检查下是不是这里的问题。

举报

相关推荐

0 条评论