直接进入正题了
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
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/190695.html