无法在Cygwin下运行Mahout 20newsgroups示例

时间:2012-05-14 14:51:03

标签: java apache mahout

我能够验证输入目录(在/ tmp下)是否与新闻组数据一起存在。不知道为什么我找到一个未找到文件的例外。

$ sh classify-20newsgroups.sh 请选择一个数字以选择要运行的相应任务 天真的 sgd 3.清理 - 清理/ tmp / mahout-work-rsrinivasan中的工作区 输入您的选择:1 好。你选择了1,我们将使用naivebayes 在/ tmp / mahout-work-rsrinivasan创建工作目录 准备培训数据 MAHOUT_LOCAL未设置;将HADOOP_CONF_DIR添加到类路径。 没有HADOOP_HOME设置,在本地运行 SLF4J:类路径包含多个SLF4J绑定。 SLF4J:在[jar:file:/ C:/cygwin/usr/local/mahout/examples/target/mahout-examples-0.6-job.jar!/org/slf4j/impl/StaticLoggerBinder.class]中找到绑定 SLF4J:在[jar:file:/ C:/cygwin/usr/local/mahout/examples/target/dependency/slf4j-jcl-1.6.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]中找到绑定 SLF4J:在[jar:file:/ C:/cygwin/usr/local/mahout/examples/target/dependency/slf4j-log4j12-1.6.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]中找到绑定 SLF4J:有关解释,请参阅http://www.slf4j.org/codes.html#multiple_bindings。 12/05/14 09:13:44 WARN driver.MahoutDriver:在类路径上找不到org.apache.mahout.classifier.bayes.PrepareTwentyNewsgroups.props,只会使用命令行参数 线程“main”中的异常java.io.FileNotFoundException:找不到输入目录\ tmp \ mahout-work-rsrinivasan \ 20news-bydate \ 20news-bydate-train         在org.apache.mahout.classifier.bayes.PrepareTwentyNewsgroups.main(PrepareTwentyNewsgroups.java:92)         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)         在java.lang.reflect.Method.invoke(Method.java:597)         在org.apache.hadoop.util.ProgramDriver $ ProgramDescription.invoke(ProgramDriver.java:68)         在org.apache.hadoop.util.ProgramDriver.driver(ProgramDriver.java:139)         在org.apache.mahout.driver.MahoutDriver.main(MahoutDriver.java:188)

2 个答案:

答案 0 :(得分:0)

您可能必须在Windows上运行之前编辑该脚本。我想Cygwin / Windows的路径是错误的。

答案 1 :(得分:0)

最好在unix环境下运行该示例。当我尝试oscon2011路透社的例子时,我遇到了类似的问题;虽然我使用git bash控制台来完成工作。似乎分类和聚类示例hdfs本地运行正常。

我设法使用vagrant启动并运行虚拟机,这个过程相对简单。是的,它确实增加了学习周期,但经过一些初步投资后,我能够在几个小时内完成路透社的例子。

感谢 阿南德