2016-05-22 7 views
0

のクラスをロードできませんでした、私は私のスパークシェルでapacheの火花が1.6+データソースLIBSVM

 scala> val data = sqlContext.read.format("libsvm").load("data/mllib/sample_libsvm_data.txt") 

を実行しようとするとき、私は、私は、1.6.0/1.6.1 apacheのスパークのプリコンパイル版をダウンロードしています

にjava.lang.ClassNotFoundExceptionを得る:LIBSVM

:データ ソースのクラスのロードに失敗しました。

私はスタックフローの検索を行いますが、このリンクfailed-to-load class libsvmは1.6で動作するはずですが、何とか動作しませんでした。これを行うには何が必要ですか?

+0

MLUtilsを使用して、他のスタックオーバーフローリンクに似て、例えば "valの例:RDD [LabeledPoint] = MLUtils.loadLibSVMFile(sc、" data/mllib/sample_libsvm_data.txt ")" – dbspace

+0

これはクラスパスの問題でしょうか?スパークシェルをどうやって始めましたか?他のバージョンのSparkやScalaがインストールされていますか?環境SPARK_HOMEが何かに設定されていますか(その場合はクリアして、やり直してください)?あなたはUNIXのようなOSを使っていますか? –

+0

私はまずsparc-1.6.1-bin-hadoop2.6のようなフォルダにプリコンパイルバージョンを解凍してから、そのフォルダに移動してbin/spark-shellを実行してspark-shellを起動します。私も1.6.0でこれを試してみて、私は同じ問題にぶつかります。また、問題はMacOSとLinuxの両方で発生します。 (RHEL 6.x) – dbspace

答えて

0

spark-shellが正しい場所から実行されていても、古いバージョンに設定されていることがわかりましたが、SPARK_HOMEをアンロードするとSPARK_HOMEを使用してライブラリをロードしようとしていました環境変数。それは今うまくいきました

関連する問題