问题出现:
学习 rocketmq 的时候,启动 nameserver,执行命令:nohup sh bin/mqnamesrv & ,在 nohup.out 文件里面报:
问题分析:
1 系统上已经安装了 jdk1.8,也配置好了环境变量。应该不是 jdk 安装问题。
2 查看 runserver.sh 脚本文件发现报错信息在这下面三行:
[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=$HOME/jdk/java
[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/usr/java
[ ! -e "$JAVA_HOME/bin/java" ] && error_exit "Please set the JAVA_HOME variable in your environment, We need java (x64)!"
问题解决:
将第一行的$HOME/jdk/java 路径修改成系统 JDK 安装路径,我以 Mac 系统安装路径为例,屏蔽第二行和第三行。
[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_101.jdk/Contents/Home
#[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/usr/java
#[ ! -e "$JAVA_HOME/bin/java" ] && error_exit "Please set the JAVA_HOME variable in your environment, We need java (x64)!"