RocketMq踩坑记录-在WIN上使用

RocketMq踩坑记录-在WIN上使用

下载安装:http://rocketmq.apache.org/docs/quick-start/

真的裂开了,差点我就不想搞了,还好最后面弄出来了
如果出现下面的问题,请先看一下第3点,环境是否配好,如果环境配好了,有些问题不会出现,出现了修改一下就好了。

踩坑

1、nameserver启动失败

错误1 :找不到java的 \jre\lib\ext

原因:jdk安装目录有 空格

解决:在runserver.cmd 文件中主动添加一个java的home目录,这样他就不会去读你的系统目录下的java,就可以避免 set “JAVA_HOME=F:\JDK\openjdk-8u41-b04-windows-i586-14_jan_2020\java-se-8u41-ri”

错误2 :启动 的时候 出现 内存不足,无法创建jvm
Could not reserve enough space for 2097152KB object heap
无法创建java堆
原因:默认设置的java虚拟机内存太大,导致启动不了

解决:还是在runserver.cmd 文件里面,修改一下他的默认jvm设置 set "JAVA_OPT=%JAVA_OPT% -server -Xms1g -Xmx1g -Xmn512m

2、broker服务启动失败

也会有找不到java的 \jre\lib\ext错误,解决办法是一样的

错误1: -XX:MaxDirectMemorySize=15g 这个默认设置太大,会启动不了
Invalid maximum direct memory size: -XX:MaxDirectMemorySize=15g
在这里插入图片描述

解决:修改一下-XX:MaxDirectMemorySize=15g的大小,这个配置在runbroker里面。

3、环境问题

1、需要配置java_home的地址,如果不配置就去那两个cmd里面去set一下,这个是在 runserver.cmd和runbroker.cmd里面配的。

避免Java的安装目录里面有空格。(一般默认安装jdk

的话都是安装的File pro…下面,这个目录里面就有空格,会出现上面的第一个问题。)

# 这个目录里面不要有空格,不然就会出问题
set "JAVA_HOME=F:\JDK\openjdk-8u41-b04-windows-i586-14_jan_2020\java-se-8u41-ri"

2、配置ROCKETMQ_HOME (这个是配置在环境变量里面)

ROCKETMQ_HOME="E:\java\rocketmq-all-4.9.0-bin-release\rocketmq-all-4.9.0-bin-release"

3、配置NAMESRV_ADDR (这个也是配置在环境变量里面)

NAMESRV_ADDR="localhost:9876"

4、如果2,3没有配置可以3直接使用

这个设置在官网有提到

# 这个是在你启动nameserver或者broker的时候,设置一个临时的环境,这个环境只对当前cmd窗口有效,就是说如果你重新开启一个窗口,又要重新设置一下,当然如果你配了环境变量,就不用搞这个了
$Env:ROCKETMQ_HOME="D:\rocketmq"
$Env:NAMESRV_ADDR="localhost:9876"

今天又发现了一个问题,突然broker服务就启动不了
看了一下日志,发现他在加载一个store文件夹,感觉是一些东西加载不了,然后就删了那个store文件夹

这个应该就是 网上一些教程中 broker启动不了,就去删store文件夹的原因吧,具体是为什么还不晓得
RocketMq踩坑记录-在WIN上使用_第1张图片

在上面这些都弄完之后,应该就可以启动成功了。

你可能感兴趣的:(java,java,开发语言,后端)