MapReduce 運行時報ClassNotFound 時的解決方法

 直接進入正題了 

MapReduce程序報ClassNotFound的錯誤如何解決。

如果你也遇到了這個問題可以按照下面方法解決 

1、運行程序就報ClassNotFound ,日誌裏面沒有MapReduce程序運行的任何信息

     這就是job時的異常。

    解決首先本地的Classpath中要存在對應的Jar包  

     也就是必須要能夠運行Job 提交任務 當然任務都不能提交成功也就沒有第2種情況

2、Map或Reduce運行時出現ClassNotFound     

     這是任務成功提交後 MapReduce程序運行的時候出現的問題  新手遇到這個問題一般不易找到原因(筆者也是藉助別人幫忙很難才找到的) 原因是MapReduce的環境和job的運行環境不同 MapReduce是運行在(2.x)Yarn框架上的

    解決hadoop classpath中要存在對應的jar包

   注意 這不是改hadoop-env   而是放在hadoop classpath包含的目錄中  如果不放在hadoop classpath包含的目錄中  有可能出現Job找到類而MapReduce程序找不到的ClassNotFound


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章