IDEA运行RocketMQ源码调试,该配置的文件都配置了,就是启动失败,broker.log记录的失败日志如下:
2022-02-23 11:58:46 ERROR main - persist file D:/Desktop/rocketmq-all-4.9.2-source-release/home/store \config\consumerFilter.json exception
java.io.FileNotFoundException: D:\Desktop\rocketmq-all-4.9.2-source-release\home\store \config\consumerFilter.json.tmp (文件名、目录名或卷标语法不正确。)
at java.io.FileOutputStream.open0(Native Method) ~[na:1.8.0_301]
at java.io.FileOutputStream.open(FileOutputStream.java:270) ~[na:1.8.0_301]
at java.io.FileOutputStream.<init>(FileOutputStream.java:213) ~[na:1.8.0_301]
at java.io.FileOutputStream.<init>(FileOutputStream.java:162) ~[na:1.8.0_301]
at java.io.FileWriter.<init>(FileWriter.java:90) ~[na:1.8.0_301]
at org.apache.rocketmq.common.MixAll.string2FileNotSafe(MixAll.java:166) ~[classes/:na]
at org.apache.rocketmq.common.MixAll.string2File(MixAll.java:142) ~[classes/:na]
at org.apache.rocketmq.common.ConfigManager.persist(ConfigManager.java:75) ~[classes/:na]
at org.apache.rocketmq.broker.BrokerController.shutdown(BrokerController.java:812) [classes/:na]
at org.apache.rocketmq.broker.BrokerStartup.createBrokerController(BrokerStartup.java:224) [classes/:na]
at org.apache.rocketmq.broker.BrokerStartup.main(BrokerStartup.java:58) [classes/:na]
java.io.FileNotFoundException: D:\Desktop\rocketmq-all-4.9.2-source-release\home\store \config\consumerFilter.json.tmp (文件名、目录名或卷标语法不正确。)提示找不到文件。发现store后面多了个空格。原来broker.conf配置文件行尾不可以有空格,否则解析的时候会带上空格。
broker.conf配置文件如下:
brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
#namesrvAddr地址
namesrvAddr=127.0.0.1:9876
#存储路径
storePathRootDir=D:/Desktop/rocketmq-all-4.9.2-source-release/home/store
#commitLog存储路径
storePathCommitLog=D:/Desktop/rocketmq-all-4.9.2-source-release/home/store/commitlog
#消费队列存储路径
storePathConsumeQueue=D:/Desktop/rocketmq-all-4.9.2-source-release/home/store/consumequeue
#消息索引存储路径
storePathIndex=D:/Desktop/rocketmq-all-4.9.2-source-release/home/store/index
#checkpoint文件存储路径
storeCheckpoint=D:/Desktop/rocketmq-all-4.9.2-source-release/home/store/checkpoint
#abort文件存储路径
abortFile=D:/Desktop/rocketmq-all-4.9.2-source-release/home/store/abort