2012-06-22 32 views
0

我試圖使用seqdumper使用以下命令來轉儲序列文件文件:傾銷序列與象夫seqdumper

/opt/mahout/bin/mahout seqdumper -i ~/input_file -o ~/output 

,但它拋出以下異常:

Exception in thread "main" java.lang.RuntimeException: java.io.IOException: WritableName can't load class: org.apache.mahout.clustering.WeightedPropertyVectorWritable 

我已經嘗試將$ MAHOUT_HOME/core/target目錄中的mahout jar添加到$ HADOOP_CLASSPATH,但無濟於事。

任何人都可以在這裏指出正確的方向嗎?

編輯:

我也試着看穿HDFS文件與

hadoop dfs -text /home/hduser/input_file 

,但我得到了同樣的錯誤。

+1

要將其與'hadoop'一起使用,您確實需要設置'HADOOP_CLASSPATH'。那不一樣。你仍然需要指向jar文件的正確位置,我不認爲你的安裝有它們。 –

+0

我如何指向罐子?我想你是指通過運行mvn install創建的。我有他們的核心/目標。我在覈心/類文件夾中找到了WeightedPropertyVectorWritable,但是如何告訴它如何加載它? – adivasile

回答

1

core/target不包含類。您至少在尋找core/target/classes。但是,如果MAHOUT_HOME設置正確,則您不需要執行任何此類操作,因爲腳本已經設置了類路徑。

+0

我將$ MAHOUT_HOME設置爲/ opt/mahout,這是我設置Mahout的地方。 – adivasile

+0

..它有.jar文件嗎?還是他們在像「core/target」這樣的子類中?看看腳本,看看它在哪裏尋找JAR文件,檢查你沒有改變這些東西。 –

+0

罐子在覈心/目標 – adivasile