Mahout - 尝试维基百科示例时出错

时间:2013-10-21 21:51:25

标签: java hadoop classpath mahout

注意这篇文章与

类似

Caused by: java.lang.ClassNotFoundException: classpath

但不同的错误信息。

当我尝试从https://cwiki.apache.org/confluence/display/MAHOUT/Wikipedia+Bayes+Example

运行维基百科贝叶斯示例时

当我运行以下命令时:

lis-macbook-pro:mahout-distribution-0.8 Li$ mahout wikipediaXMLSplitter -d examples/temp/enwiki-latest-pages-articles10.xml -o wikipedia/chunks -c 64

我收到错误消息:

MAHOUT_LOCAL is set, so we don't add HADOOP_CONF_DIR to classpath.
MAHOUT_LOCAL is set, running locally
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/Users/Li/File/Java/mahout-distribution-0.8/examples/target/mahout-examples-0.8-job.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/Users/Li/File/Java/mahout-distribution-0.8/examples/target/dependency/slf4j-jcl-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.JCLLoggerFactory]
Oct 21, 2013 4:25:47 PM org.slf4j.impl.JCLLoggerAdapter warn
WARNING: Unable to add class: wikipediaXMLSplitter
java.lang.ClassNotFoundException: wikipediaXMLSplitter
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:171)
at org.apache.mahout.driver.MahoutDriver.addClass(MahoutDriver.java:236)
at org.apache.mahout.driver.MahoutDriver.main(MahoutDriver.java:127)
Oct 21, 2013 4:25:47 PM org.slf4j.impl.JCLLoggerAdapter warn
WARNING: No wikipediaXMLSplitter.props found on classpath, will use command-line arguments only
Unknown program 'wikipediaXMLSplitter' chosen.

我正在使用Hadoop 1.2和Mahout 0.8。 mahout-distribution-0.8 / bin已添加到$ PATH。 $ MAHOUT_LOCAL设置为“True”,因此它在本地运行。

我不知道为什么我“无法添加课程:wikipediaXMLSplitter”

2 个答案:

答案 0 :(得分:1)

原来的问题:

您看到错误的原因:

$ MAHOUT_HOME / src / conf / driver.classes.default.props中没有wikipediaXmlSplitter的条目。将以下行添加到此文件中:

  org.apache.mahout.text.wikipedia.WikipediaXmlSplitter = wikipediaXmlSplitter : wikipedia splitter

您现在应该可以通过以下方式调用:

mahout wikipediaXmlSplitter 

请注意,wikipediaXmlSplitter'中的区分大小写。

Mahout维基上有一个错误,其中包含' wikipediaXMLSplitter'而不是维基百科XmlSplitter'此后已在新的Mahout网站http://mahout.apache.org/users/classification/wikipedia-bayes-example.html

上修复

答案 1 :(得分:0)

您可以尝试使用全名 org.apache.mahout.text.wikipedia.WikipediaXmlSplitter 而不仅仅是WikipediaXmlSplitter