rocketmq启动mqbroker报错:Error: VM option 'useG1GC' is experimental and must be enabled via -XX:+UnlockExperimentalVMOptions.
时间: 2023-12-14 07:11:01 浏览: 728
这个报错是因为您使用了Java 9或以上版本,G1GC是Java 9引入的一项实验性特性,需要使用 -XX:+UnlockExperimentalVMOptions 参数来启用它,所以您需要在启动mqbroker时加上这个参数,即:
```
sh mqbroker -n localhost:9876 -c ../conf/2m-2s-sync/broker-a.properties -n localhost:9876 -Xmx4g -Xms4g -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC
```
这样就可以解决这个报错了。
相关问题
使用sh /opt/MDM/data/server/rocketmq/45.1/bin/mgbroker -c /opt/MDM/data/server/rocketmq/4.5.1/conf/broker.conf -n 127.0.0.1:9876 -XX:+UnlockExperimentalVMOptions启动rocketmq报错Error: VM option 'UseG1Gc' is experimental and must be enabled via -xX:+UnlockExperimentalVMOptions
非常抱歉,我的前一条回答有误。正确的启用 G1 垃圾回收器的方式是使用 `-XX:+UseG1GC` 参数。因此,您可以尝试使用如下命令启动 RocketMQ Broker:
```
sh /opt/MDM/data/server/rocketmq/45.1/bin/mgbroker -c /opt/MDM/data/server/rocketmq/4.5.1/conf/broker.conf -n 127.0.0.1:9876 -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC
```
这个命令中包含了 `-XX:+UnlockExperimentalVMOptions` 参数,以启用实验性特性,以及 `-XX:+UseG1GC` 参数,以启用 G1 垃圾回收器。
希望这次回答能够解决您的问题。
rocketmq用sh /opt/MDM/data/server/rocketmq/45.1/bin/mgbroker -c /opt/MDM/data/server/rocketmq/4.5.1/conf/broker.conf -n 127.0.0.1:9876方式启动提示Error: VM option 'UseG1Gc' is experimental and must be enabled via -xX:+UnlockExperimentalVMOptions
这个错误提示是因为 JVM 的一个实验性特性 G1 垃圾回收器被使用了,需要使用 -XX:+UnlockExperimentalVMOptions 参数来启用。您可以尝试以下两种方式来解决这个问题:
1. 在启动命令中添加 -XX:+UnlockExperimentalVMOptions 参数,例如:
```
sh /opt/MDM/data/server/rocketmq/45.1/bin/mgbroker -c /opt/MDM/data/server/rocketmq/4.5.1/conf/broker.conf -n 127.0.0.1:9876 -XX:+UnlockExperimentalVMOptions
```
2. 在 /opt/MDM/data/server/rocketmq/45.1/bin/runbroker.sh 脚本中添加 -XX:+UnlockExperimentalVMOptions 参数。在该脚本中找到类似如下代码的位置:
```
JAVA_OPT="${JAVA_OPT} -server -Xms${JAVA_MEM_OPTS} -Xmx${JAVA_MEM_OPTS} -Xmn${JAVA_MEM_OPTS} -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
```
将其改为如下代码:
```
JAVA_OPT="${JAVA_OPT} -server -Xms${JAVA_MEM_OPTS} -Xmx${JAVA_MEM_OPTS} -Xmn${JAVA_MEM_OPTS} -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m -XX:+UnlockExperimentalVMOptions"
```
然后重新启动 RocketMQ。
希望这些方法可以帮助你解决问题。
阅读全文