2014-11-03 314 views
5

首先,我知道此前已被問過,但沒有解決方案爲我工作,我想知道爲什麼。軟件包org.apache.hadoop.fs不存在

我想編譯標準'WordCount.java'.jar爲我的linux單節點集羣上的hadoop,但不斷得到package org.apache.hadoop.* does not exist錯誤。

我知道我必須編輯$ CLASSPATH,但是我在網上找到的所有東西都說引用hadoop-core,我在我的版本(2.4.0)的任何地方找不到hadoop-core。我如何找到org.apache.hadoop。*在我的系統上存在的位置?

我覺得這將是一個很好的'一般'的答案,因爲我已經看到這個問題的許多問題,每個人都給出了具體的/路徑/到/ classpath /,但它(顯然)不同,取決於版本和構建hadoop 。

+0

你下載了Apache Commons庫嗎?什麼解決方案不適合你? – apesa 2014-11-03 22:00:24

回答

17

如您所說,您需要的CLASSPATH取決於版本,位置和安裝類型。如何安裝它是一個單獨的討論,但假設你安裝了適當的hadoop設置,這很容易(雖然我承認,我不知道它在哪裏被記錄)。

Hadoop提供了一個方便的實用程序來獲取您需要的CLASSPATH信息。運行這個

bin/hadoop classpath 

這應該給你你需要的信息設置你的類路徑來編譯你的代碼。

+1

謝謝!希望這會幫助任何遇到麻煩的人。我正在閱讀的所有內容都提供了有關文件位置的具體說明,但無論安裝方式如何,此解決方案都可以幫助用戶! – drjrm3 2014-11-03 22:06:51

+1

我們應該在哪裏運行這個命令? – 2016-09-24 21:53:41

+0

@VineetKaushik假設你已經在系統中正確配置了hadoop,打開一個終端窗口並輸入'hadoop classpath',它應該輸出hadoop有它的庫的正確目錄。 – 2016-10-14 15:45:41

相關問題