2012-06-22 31 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