大佬教程收集整理的这篇文章主要介绍了我安装了Java 7后,cassandra 2抱怨Java 7,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
尝试启动Cassandra时出现相同的错误消息。但是我通知我,只有在以root用户身份启动Cassandra时才出现错误。当我以本地用户身份启动Cassandra时,它起作用了。
原来,仅为我的本地用户配置了java:
$ java -version
java version "1.7.0_60"
Java(TM) SE Runtime Environment (build 1.7.0_60-b19)
Java HotSpot(TM) 64-Bit Server VM (build 24.60-b09, mixed modE)
$ sudo java -version
sudo: java: command not found
这解决了问题:
告诉系统您已经安装了JRE(将usr / local / java / jre1.7.0_60 / bin / java更新到当前路径):
$ sudo update-alternatives --install "/usr/bin/java" "java" "/usr/local/java/jre1.7.0_60/bin/java" 1
将新的JRE设置为默认值:
$ sudo update-alternatives --set java /usr/local/java/jre1.7.0_60/bin/java
现在已为root用户安装了Java,并且可以以root用户身份启动Cassandra,而不会出现错误消息。
$ Cassandra
Cassandra 2.0 and later require Java 7 or later.
好的,init脚本的那部分发生了什么?
java_ver_output=`"${JAVA:-java}" -version 2>&1`
jvmver=`echo "$java_ver_output" | awk -F'"' 'NR==1 {print $2}'`
JVM_VERSION=${jvmver%_*}
JVM_PATCH_VERSION=${jvmver#*_}
if [ "$JVM_VERSION" \< "1.7" ] ; then
echo "Cassandra 2.0 and later require Java 7 or later."
exit 1;
fi
嗯,如果我从命令行获取版本:
$ java_ver_output=`"${JAVA:-java}" -version 2>&1`
$ echo $java_ver_output
java version "1.7.0_55" Java(TM) SE Runtime Environment (build 1.7.0_55-b13) Java HotSpot(TM) 64-Bit Server VM (build 24.55-b03,mixed modE)
$ JVM_VERSION=${jvmver%_*}
$ echo $JVM_VERSION
1.7.0
如果我运行which java
:
$ which java
/usr/bin/java
如果我在脚本中添加该行:
/usr/bin/java
令人沮丧的是,我过去一直在运行它,但是由于我跳动服务器,所以无法启动Cassandra。
所以我很困惑,Cassandra对我正在运行的Java版本感到困惑吗?我如何让Cassandra运行?是1.7.0_55
不是Java
7(我没有获得Java的命名约定)?
以上是大佬教程为你收集整理的我安装了Java 7后,cassandra 2抱怨Java 7全部内容,希望文章能够帮你解决我安装了Java 7后,cassandra 2抱怨Java 7所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。