2016-03-19 4 views
0

Ich benutze IDEA15 und möchte der Funkenquelle ein neues Modul hinzufügen.Wie fügt man der Spark-Quelle ein neues Modul hinzu und lässt es in Spark-Shell arbeiten?

Ich klickte auf Datei-> Neu-> Modul und wählte ein Maven-Modul. Dann setze ich die Option "Als Modul hinzufügen zu ..." und die "Eltern" auf "Spark Project Parent POM". Nachdem ich den Modulnamen eingegeben hatte, klickte ich auf "Finish".

Dann habe ich einige Code auf mein neues Modul und bauen es den follwing Befehl

"build/mvn -Pyarn -Phadoop-2.4 -Dhadoop.version = 2.4.0 -DskipTests sauber Paket"

mit

Das Projekt wurde erfolgreich erstellt, aber in der Spark-Shell kann ich meine neu hinzugefügten Klassen nicht importieren.

Ich frage mich, was ist falsch mit dem, was ich getan habe und wie kann ich ein neues Modul hinzufügen und dann in der Spark-Shell importieren?

Vielen Dank!

PS: Ich bin mir sicher, dass es keinen Problem mit meinem Code gibt. Ich habe meinen Code im mllib-Modul hinzugefügt und es hat funktioniert. Vielleicht fehlt eine Abhängigkeit, aber ich weiß nicht, wie ich das beheben kann.

Antwort

0

Der Maven-Build erstellt eine JAR-Datei von Ihrem Build (sollte sich im Verzeichnis target/ in Ihrem Projektordner befinden).

Wenn Sie die Spark-Shell starten, können Sie die JAR-Dateien definieren, die in Ihrer Shell enthalten sein sollen.

Funken Schale --jars /path/to/your/project.jar

auch Sie es versuchen könnte, Ihr Projekt in Ihrem lokalen Maven-Repository zu installieren: Sie können Ihre jar da wie diese gehören Es ist möglich, dass die Spark-Shell es aufheben kann (Sie müssen also nicht jedes Mal, wenn Sie es ausführen, --jars angeben).

Dazu führen Sie am Ende Ihren Maven Build-Befehl mit clean install anstelle von clean package.

+0

Ich spezifiziere --jars Argument und jetzt funktioniert es! Danke vielmals! – BetaGo

+0

Es ist mein erstes Mal, Fragen zu Stackoverflow zu stellen. Tut mir leid, dass ich dich nicht angenommen habe ... Jetzt ist es erledigt :) – BetaGo

Verwandte Themen