消息队列学习 一 ------ rocketmq启动nameserver异常解决

系统环境:

centos:6.5

jdk:1.7

rocketmq:3.2.6




  笔者在学习rocketmq的时候,想要先启动nameserver,但是这个时候出现了问题,ERROR: Please set the JAVA_HOME variable in your environment, We need java(x64)! !!

但是系统上已经安装了jdk1.7,也配置好了环境变量,但是启动nameserver的时候一直出现这个问题,后来笔者看了一下启动脚本,看看出现该错误的地方是什么问题,结果在runserver.sh文件中看到了这个错误出现的原因:

[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=$HOME/jdk/java
[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/opt/taobao/java
[ ! -e "$JAVA_HOME/bin/java" ] && error_exit "Please set the JAVA_HOME variable in your environment, We need java(x64)!"


因为这段指令的原因,特别是2 , 3行,笔者不明白为什么要这样,

[ ! -e "$JAVA_HOME/bin/java" ]  这段代码是查看是否存在$JAVA_HOME/bin/java这个文件

但是我不明白如果存在了为什么又要将JAVA_HOME修改为/opt/taobao/java,感觉是一个逻辑错误


然后笔者将第 2,3行给屏蔽了,再次启动nohup sh mqnamesrv &  启动nameserver,就可以正常启动了





你可能感兴趣的:(rocketmq)