ERROR: MaxTemperature is not COMMAND nor fully qualified CLASSNAME

青埂峰峰主丶微信發表於2020-11-10

今天按照Hadoop權威指南寫了一個示例專案,然後拿到伺服器執行,然後報標題的錯誤。(前提是已經安裝好了hadoop) 

異常顯示為:

顯示找不到這個類。通過網上百度,發現需要寫全類名,根據自己的專案中的全路徑名進行補充:

依舊報錯,但是這次報錯內容換了,證明剛才的修正是對的。

但是出現新問題繼續解決。通過異常看顯示的是hadoop中的檔案系統使用的是hdfs這裡沒有書中說的sample.txt。(這個檔案我是放在執行命令的當前資料夾下)

所以需要的是將檔案放到hadoop預設的檔案系統中。

通過百度查到在hadoop中將檔案放到它的檔案系統hdfs中需要命令hadoop fs -copyFromLocal 檔名 目標資料夾

然後再設定最終的輸出目錄地點為hdfs的未存在目錄即可,最終的命令為:

 hadoop com.sunshine.hadoop.excutor.MaxTemperatureExecutor /sample.txt /output/01

(上述命令中的/sample.txt是已經將sample.txt檔案放於hdfs中,/output/01是hdfs中不存在的目錄,hadoop執行完MapReduce操作後會自動建立)

最終執行成功示例

相關文章