【发布时间】:2013-12-21 04:23:12
【问题描述】:
我是 cassandra 新手,我正在尝试使用 JAVA oracle 7 安装 cassandra 1.1.9,但出现以下错误:
cassandra -f
xss = -ea -javaagent:/usr/share/cassandra/lib/jamm-0.2.5.jar -XX:+UseThreadPriorities -XX:ThreadPriorityPolicy=42 -Xms1862M -Xmx1862M -Xmn200M -XX:+HeapDumpOnOutOfMemoryError -Xss256k
Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/cassandra/service/CassandraDaemon : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
对于我读到的 How to fix java.lang.UnsupportedClassVersionError: Unsupported major.minor version 它是源代码和 Java 版本之间的不兼容,但对我来说似乎没问题:
ubuntu@localhost:~$ java -version
java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)
有人知道我可能会错过什么吗?
【问题讨论】:
-
您可能在 Cassandra 中使用了不同的 java 二进制文件。您的 cassandra 脚本找到了哪个二进制文件?你有 JAVA_HOME 设置吗?
-
实际上你是对的,我的 JAVA_HOME 指向另一个版本: $ echo $JAVA_HOME
/opt/java/64/jdk1.6.0_38和 $which java/usr/bin/java。 Cassandra 用户 JAVA_HOME 找到二进制文件?