2013-03-27 28 views
1

我試圖在單個系統(僞分佈式模式)上運行構建決策樹的Breiman示例以進行Mahout中的分類。我指this tutorial 我有與前兩個步驟的教程的但第三步驟沒問題(這是「生成用於所述數據集的文件描述符」)拋出異常如下所示java.lang.ClassNotFoundException在Mahout中運行Breiman示例

Exception in thread "main" java.lang.ClassNotFoundException: org.apache.mahout.classifier.df.tools.Describe 
at java.net.URLClassLoader$1.run(URLClassLoader.java:366) 
at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
at java.security.AccessController.doPrivileged(Native Method) 
at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:423) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:356) 
at java.lang.Class.forName0(Native Method) 
at java.lang.Class.forName(Class.java:266) 
at org.apache.hadoop.util.RunJar.main(RunJar.java:149) 

命令我跑是

[email protected]:~/hadoop$ bin/hadoop jar /home/viggi/workspace/mahout-distribution-0.5/mahout-core-0.5-job.jar org.apache.mahout.classifier.df.tools.Describe -p data10/glass.data -f data10/glass.info -d I 9 N L 

我發現了一個帖子在堆棧溢出與類似的異常。 java.lang.NoClassDefFoundError儘管它與mahout或Breiman例子無關,但我決定採用推薦的解決方案,下載HttpClient jar-library並將其放入$MAHOUT_HOME/lib。它沒有工作。所以如果有人能夠解釋第三步實際做了什麼以及如何擺脫這些例外情況,那將會非常有幫助。

+0

在控制檯中進行編譯,您可以執行以下命令:'罐子-tvf Mahout的核心-0.5-工作。 jar | grep Describe' - 並確認該類在輸出中列出 – 2013-03-27 10:24:41

+0

@ChrisWhite Describe.class存在於該jar中。這裏的輸出 - 6995 Sat May 28 28:07:08 IST 2011 org/apache/mahout/df/tools/Describe.class – 2013-03-27 10:32:34

回答

2

據我所見,Mahout 0.5沒有org.apache.mahout.classifier.df.tools.Describe類,這就是爲什麼你得到異常,它找不到它。

從Mahout 0.6開始,班級就在那裏。我建議你升級到Mahout的最新穩定版本(0.7)

+0

但是Mahout 0.5有org.apache.mahout.classifier.df.tools.Describe class – 2013-03-27 10:20:54

+1

I只是雙重檢查。你是對的,0.5包含'Describe'類,但是在'org.apache.mahout.df.tools'中。請注意,它的路徑中沒有'classifier'軟件包。從Mahout 0.6開始,似乎他們將'df'軟件包移入'classifier'軟件包。因此,使用'org.apache.mahout.df.tools.Describe'作爲命令行參數應該可以做到。 – 2013-03-27 11:03:01

+0

它工作!你是對的,'描述'類從來不在「分類器」包內。非常感謝 :-) – 2013-03-27 11:50:07

0

你的軟件包對於Describe似乎是錯誤的 - 在剛剛下載的0.5 core-job.jar中,Describe軟件包沒有包含分類器部分:

  • org.apache.mahout.df.tools.Describe

不知道你是如何得到這在你的代碼雖然

相關問題