2017-05-17 1 views
0

ich folgende Störung erhalte, wenn der Befehl Funken Shell ausgeführt wird:Warum scheitert Funkenschale mit "war zu dieser Zeit unerwartet"?

enter image description here

I Funken 2.1.1-bin-hadoop2.7.tgz Datei aus http://spark.apache.org/downloads.html heruntergeladen haben, extrahiert die TAR-Datei und klebte die Inhalt des Ordners in c: \ Spark-Verzeichnis. Danach habe ich die Umgebungsvariable für spark und jdk entsprechend konfiguriert, aber ich bekomme diesen Fehler. Jede Hilfe wird geschätzt.

+0

Wo haben Sie Java installiert? Was ist 'JAVA_HOME'? –

Antwort

2

Ich bin fast sicher, dass Ihre JAVA_HOME Umgebungsvariable enthält einen Raum gesetzt, die spark-shell bricht. Bitte installieren Sie Java erneut in ein Verzeichnis ohne Leerzeichen im Pfad.


Sie können das entsprechende Stück Code in bin/spark-class2.cmd sehen, dass spark-shell unter Windows ausgeführt wird unter der Decke (durch bin/spark-submit2.cmd Shell-Skript):

if "x%1"=="x" (

Also, wenn spark-class2.cmd Ersatz %1 auf einen Pfad mit einem Leerzeichen (oder etwas Ähnliches) endet es als:

if "x"Files\Java\jdk1.8.0_45""=="x" (

, die den Fehler aufgrund gibt zu viele doppelte Anführungszeichen.

Das Geheimnis ist, wie die JAVA_HOME an dieser Stelle endet. Ich kann den Grund nicht finden, aber das sehen wir hier.

0

sollten Sie Java-Pfad in spark-env.sh Datei innerhalb Funken conf

export JAVA_HOME=/usr/lib/jvm/java-8-oracle 
+0

Ich bin neu zu funken, ich finde spark-env.sh Datei nicht genau, ich kann funken-env.sh.template im config-Verzeichnis sehen und es liest "Diese Datei stammt, wenn verschiedene Spark-Programme laufen. # Kopieren es als spark-env.sh und bearbeiten Sie das, um Spark für Ihre Site zu konfigurieren. " Also habe ich es kopiert und Export-Anweisung hinzugefügt, aber es funktioniert immer noch nicht. –

0

Ich habe versucht, die früheren Versionen von Java zu deinstallieren, die neue Version im Standardpfad zu installieren, d. H. In C: \ Programme \ Java .. aber es hat trotzdem nicht funktioniert. Durch den Blick auf den Fehler habe ich versucht, doppelte Anführungszeichen in der Umgebungsvariablen für JAVA_HOME Pfad hinzuzufügen, aber es hat immer noch nicht funktioniert. Dann habe ich schließlich die gleiche Version in C: \ Java .. wieder installiert und es hat funktioniert. Ich weiß nicht, warum es nicht unter "C: \ Programme \ Java .." funktionierte, auch nach dem Hinzufügen von doppelten Anführungszeichen, deshalb poste ich meine Ergebnisse und Auflösung, wie es ist. Wenn mir jemand die Erklärung geben kann, dann wird es großartig.

+0

Speicherplatz im Ordnernamen des Programmfiles –

Verwandte Themen