2017-07-10 15 views
0

私はSparkとScalaを同時に使い慣れているので、いくつかのことを明確にする必要があります。私はウェブに行って私の質問に対する決定的な答えを探していましたが、実際には私の質問に終わったわけではありません。Sparkに.jarをインストールする

現時点では、私はspark-shellを実行しています。基本的なScalaを書いてチュートリアルを完了するためです。今、このチュートリアルでは、私がsparkでライブラリを追加して、それをインポートして例のために使用したいと考えています。ライブラリの.jarファイルをダウンロードしました。 /spark/jars/フォルダに入れる必要がありますか?それをインポートするには十分ですか、それとも他の場所に宣言する必要がありますか? ./spark-shellを実行する前にコマンドを追加する必要はありますか?

また、私は、スタンドアロンのプログラム(sbtを使用し、build.sbtでライブラリを宣言する)を作成する際、火花が/spark/jars/フォルダに.jarを見つけるだろうか、私は別の場所に置く必要があるのですか?

答えて

0

どれjar--jarsコマンドを使用してspark-shellに追加することができます。

[email protected]:~> cat MyClass.java 
public class MyClass 
{ 
    public static int add(int x, int y) 
    { 
     return x + y; 
    } 
} 
[email protected]:~> javac MyClass.java 
[email protected]:~> jar cvf MyJar.jar MyClass.class 
added manifest 
adding: MyClass.class(in = 244) (out= 192)(deflated 21%) 
[email protected]:~> spark --jars ./MyJar.jar 
Welcome to 
     ____    __ 
    /__/__ ___ _____/ /__ 
    _\ \/ _ \/ _ `/ __/ '_/ 
    /___/ .__/\_,_/_/ /_/\_\ version 2.0.1 
     /_/ 

Using Scala version 2.11.8 (OpenJDK 64-Bit Server VM, Java 1.8.0_111) 
Type in expressions to have them evaluated. 
Type :help for more information. 

scala> MyClass.add(2,3) 
res0: Int = 5 

あなたが依存関係を持っているsbtを使用してプロジェクトを作成しようとしている場合は、私はsbt assembly"uber jar"を行うことをお勧めします。これにより、すべての依存関係を含む単一のJARファイルが作成され、上記のコマンドを使用して単一のjarファイルを追加できます。

+1

あなたはまた、sbtで構築されたスタンドアロンアプリについての部分に答えることができますか? – Kagestrife

+0

私の更新答えを見てください:) –

関連する問題