注意这篇文章类似于
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”
最佳答案
对于原来的问题:
您看到错误的原因:
$MAHOUT_HOME/src/conf/driver.classes.default.props 中没有 wikipediaXmlSplitter 的条目。将以下行添加到该文件中:
org.apache.mahout.text.wikipedia.WikipediaXmlSplitter = wikipediaXmlSplitter : wikipedia splitter
您现在应该能够通过以下方式调用:
mahout wikipediaXmlSplitter
请注意,“wikipediaXmlSplitter”中区分大小写。
Mahout wiki 上有一个错误,其中它读取为“wikipediaXMLSplitter”而不是“wikipediaXmlSplitter”,该错误已在新的 Mahout 网站 http://mahout.apache.org/users/classification/wikipedia-bayes-example.html 上修复。
关于java - Mahout - 尝试维基百科示例时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19505422/