2012-07-25 75 views
0

我試圖從https://cwiki.apache.org/confluence/display/MAHOUT/Wikipedia+Bayes+Example產生的原因:拋出java.lang.ClassNotFoundException:類路徑

運行維基百科貝葉斯例子當我運行下面的命令:$ MAHOUT_HOME /斌/亨利馬烏wikipediaXMLSplitter -d $ MAHOUT_HOME /例子/溫度/ -c 64

我收到此錯誤enwiki-最新的頁面,articles10.xml -o維基百科/塊:

Exception in thread "main" java.lang.NoClassDefFoundError: classpath 
Caused by: java.lang.ClassNotFoundException: classpath 
     at java.net.URLClassLoader$1.run(URLClassLoader.java:217) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at java.net.URLClassLoader.findClass(URLClassLoader.java:205) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:323) 
     at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:268) 
     at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:336) 
Running on hadoop, using /x/.../bin/hadoop and HADOOP_CONF_DIR= 
MAHOUT-JOB: /x/.../mahout-distribution-0.7/mahout-examples-0.7-job.jar 
12/07/25 11:22:06 WARN driver.MahoutDriver: Unable to add class: wikipediaXMLSplitter 
12/07/25 11:22:06 WARN driver.MahoutDriver: No wikipediaXMLSplitter.props found on classpath, will use command-line arguments only 
Unknown program 'wikipediaXMLSplitter' chosen. 

回答

0

我遇到了同樣的問題,它是由在斌/ Mahout中的代碼引起的(僅在0.7版本中):

if [ -x "$HADOOP_BINARY" ] ; then 
    HADOOP_BINARY_CLASSPATH=$("$HADOOP_BINARY" classpath) 
fi 

它會執行hadoop classpath並導致錯誤。也許hadoop的版本對mahout 0.7來說太舊了。 無論如何,我評論這三條線,它工作正常。

0

也許你應該使用:

mahout -core ... ... 

這應該工作

0

我碰到了同樣的問題。它通過指定org.apache.mahout.text.wikipedia.WikipediaXmlSplitter來解決[請注意不同的大小寫]

$ MAHOUT_HOME/bin/mahout org.apache.mahout.text.wikipedia.WikipediaXmlSplitter -d $ MAHOUT_HOME/examples /tmp/enwiki-latest-pages-articles.xml -o wikipedia/chunks

相關問題