Hadoop 运行jar包时 java.lang.ClassNotFoundException: Class com.zhen.mr.RunJob$HotMapper not found...
生活随笔
收集整理的這篇文章主要介紹了
Hadoop 运行jar包时 java.lang.ClassNotFoundException: Class com.zhen.mr.RunJob$HotMapper not found...
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
錯誤如下
Error: java.lang.RuntimeException: java.lang.ClassNotFoundException: Class com.zhen.mr.RunJob$HotMapper not foundat org.apache.hadoop.conf.Configuration.getClass(Configuration.java:2154)at org.apache.hadoop.mapreduce.task.JobContextImpl.getMapperClass(JobContextImpl.java:186)at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:742)at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341)at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:163)at java.security.AccessController.doPrivileged(Native Method)at javax.security.auth.Subject.doAs(Subject.java:422)at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1692)at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158) Caused by: java.lang.ClassNotFoundException: Class com.zhen.mr.RunJob$HotMapper not foundat org.apache.hadoop.conf.Configuration.getClassByName(Configuration.java:2060)at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:2152)... 8 more錯誤出現(xiàn)之前還有警告提示,如下
WARN mapreduce.JobResourceUploader: No job jar file set. User classes may not be found. See Job or Job#setJar(String).提示說沒有設(shè)置job jar
解決方法:
代碼中給job對象set一下
job.setJarByClass(RunJob.class);然后再打包運行就ok了。
轉(zhuǎn)載于:https://www.cnblogs.com/EnzoDin/p/7302455.html
總結(jié)
以上是生活随笔為你收集整理的Hadoop 运行jar包时 java.lang.ClassNotFoundException: Class com.zhen.mr.RunJob$HotMapper not found...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Head first java chap
- 下一篇: How to create a jump