Ich versuche, cassandra 3.0 in datastax auszuführen. Aber ich bekomme einen Fehler, der sagt Cassandra 3.0 und höher erfordern Java 8u40 oder höher.
Ich habe Java installiert und die jdk1.8.0_65 nach /usr/local/java
und die JAVA_HOME nach /usr/local/java/jdk1.8.0_65
verschoben.
Aber ich bin immer noch mit dem folgenden Fehler konfrontiert.
Cassandra 3.0 und höher erfordern Java 8u40 oder höher.
Ich habe Cassandra 3.2 DataStax Distribution rpm auf CentOS 7 installiert und das gleiche Problem festgestellt. Das Cassandra-Startskript /etc/rc.d/init.d/cassandra
findet java
binary nur in der vordefinierten Pfadliste.
JVM_SEARCH_DIRS="/usr/lib/jvm/jre /usr/lib/jvm/jre-1.7.* /usr/lib/jvm/java-1.7.*/jre"
Wenn Ihre Java-Binärdatei /usr/jdk64/jdk1.8.0_60/jre/bin/java
ist, fügen Sie /usr/jdk64/jdk1.8.0_60/jre
an JVM_SEARCH_DIRS
an, oder machen Sie /usr/lib/jvm/jre
symlink für /usr/jdk64/jdk1.8.0_60/jre
.
Überprüfen Sie Ihre Java-Version. wenn Ihre Java-Version später "1.8.0_40" ist. Gehe zu dieser Datei apache-cassandra-3.7 \ conf \ cassandra-env.ps1 und suche dieses Wort JVM_VERSION.CompareTo ("1.8.0_40"), dann ändere deine Version. Wenn Sie zum Beispiel Java 1.8.0_102 verwenden, dann ändern Sie zu JVM_VERSION.CompareTo ("1.8.0_102").
Jetzt, überprüfen Sie. Es wird funktionieren.
Ich löse dies normalerweise, indem ich mein spezifisches JAVA_HOME
in die Skripte $DSE_DIR/resources/cassandra/conf/cassandra.in.sh
und $DSE_DIR/bin/dse.in.sh
hinzufüge, die mit DataStax
bereitgestellt werden.
Füge hinzu: JAVA_HOME=/usr/local/java/jdk1.8.0_65
in jedem. (Oder ein symlink
, wenn Sie die JVM austauschen möchten, ohne diese Dateien neu zu bearbeiten.)
java -version
echo $JAVA_HOME
Ich habe auch dasselbe Problem. Meine Lösung ist die Bearbeitung der Datei apache-cassandra-3.7 / bin / cassandra. Unterhalb der Zeile, die "#! / Bin / sh" (2. Zeile) enthält, können Sie die Zeile wie folgt einfügen:
%Vor%Beispiel:
%Vor%Ich hoffe, diese Lösung kann Ihnen und anderen Menschen helfen
Das nodetool greift möglicherweise immer noch auf die frühere Java-Version zu, ich hatte das gleiche Problem.
machen Sie das kurz
sudo vim /etc/environment
fügt diese Zeile hinzu
JAVA_HOME="/ usr / lib / jvm / java-8-oracle / jre / bin / java"
source /etc/environment
echo $JAVA_HOME
nodetool status
lange dies
Bitte folgen Sie den Schritten hier Installieren und ändern Sie die in Ihrem System installierte Version von Java. Es ist sehr gut erklärt.
Versuchen Sie, den Alternativen Befehl zu verwenden:
%Vor% Es scheint so, als würde der Dienst cassandra
nur die Java-Version von Alternativen übernehmen.
... wählen Sie dort nicht Java 9 aus.
%Vor% /etc/cassandra/default.conf/jvm.options
hat weitere JVM-Parameter.
Tags und Links cassandra java-home cassandra-3.0