Cassandra 3.0 und höher erfordern Java 8u40 oder höher

8

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.

    
Nandakishore 21.12.2015, 22:07
quelle

10 Antworten

4

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 .

    
maczniak 02.02.2016 13:45
quelle
3

Ü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.

    
Prasad 09.09.2016 05:56
quelle
2

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.)

    
Sean Durity 03.02.2016 19:26
quelle
1
  1. Überprüfen Sie die erste Version von Java mit diesem Befehl java -version
  2. Überprüfen Sie den Pfad von Java mit diesem Befehl echo $JAVA_HOME
mahendra singh 07.03.2016 12:09
quelle
1

Folgendes funktioniert für mich auf einem RHEL-System:

%Vor%     
Varun 22.04.2016 10:25
quelle
1

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

    
Kentang 13.09.2016 03:33
quelle
0

Verwenden Sie die folgenden Befehle.

%Vor%     
Neeraj Sharma 07.03.2016 10:34
quelle
0

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.

    
mehnaazm 05.08.2016 14:25
quelle
0

Versuchen Sie, den Alternativen Befehl zu verwenden:

%Vor%     
Konstantin Vustin 07.12.2017 06:21
quelle
0

Es scheint so, als würde der Dienst cassandra nur die Java-Version von Alternativen übernehmen.

%Vor%

... wählen Sie dort nicht Java 9 aus.

%Vor%

/etc/cassandra/default.conf/jvm.options hat weitere JVM-Parameter.

    
Martin Zeitler 05.02.2018 09:59
quelle