Hadoop问题解决之:java.lang.ClassNotFoundException:com.demo.Demo$DemoMapper
来源:互联网 发布:台达plc编程教学视频 编辑:程序博客网 时间:2024/06/01 23:01
Hadoop问题解决之:java.lang.ClassNotFoundException
- Hadoop问题解决之javalangClassNotFoundException
- 前言
- 解决方法
- 1打包运行
- 2打包之后在Eclipse上运行
- 总结
1.前言
在使用Eclipse进行hadoop项目开发时,通过Eclipse运行编写好的hadoop项目,在运行项目时,可能会出现如下的异常信息:
17/04/17 06:05:50 INFO mapred.JobClient: Task Id : attempt_201704170332_0008_m_000000_1, Status : FAILED17/04/17 06:06:09 INFO mapred.JobClient: Task Id : attempt_201704170332_0008_m_000000_2, Status : FAILEDjava.lang.RuntimeException: java.lang.ClassNotFoundException: com.demo.mapreduce.Demo$DemoMapper at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:857) at org.apache.hadoop.mapreduce.JobContext.getMapperClass(JobContext.java:199) at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:718) at org.apache.hadoop.mapred.MapTask.run(MapTask.java:364) at org.apache.hadoop.mapred.Child$4.run(Child.java:255) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:415) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190) at org.apache.hadoop.mapred.Child.main(Child.java:249)Caused by: java.lang.ClassNotFoundException: com.aouty.mapreduce.FlightAnalysis$FlightMapper at java.net.URLClassLoader$1.run(URLClassLoader.java:366) at java.net.URLClassLoader$1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at java.lang.ClassLoader.loadClass(ClassLoader.java:425) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) at java.lang.ClassLoader.loadClass(ClassLoader.java:358) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:274) at org.apache.hadoop.conf.Configuration.getClassByName(Configuration.java:810) at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:855)
(即:找不到自定义的内部类)
其中Demo为自定义的类,DemoMapper是自定义的内部类。
2.解决方法
解决该类问题时,有以下两种解决办法
2.1打包运行
将项目打包成jar包,然后在命令行使用命令运行,此处,将项目打包在root目录下为demo.jar
localhost@localhost~:hadoop jar demo.jar com.demo.Demo wcin wcout
如此,问题解决
2.2打包之后,在Eclipse上运行
在Eclipse上运行不了主要是因为Eclipse找不到那个类,所以,可以通过将项目打包成jar包,然后为程序指定jar文件路径就好了。此处,将项目打包在root目录下为demo.jar。
在Demo.jar的main方法中的job定义处添加如下代码:
((JobConf)job.getConfiguration()).setJar("/root/Desktop/flightweekdistinct.jar");
然后在运行程序前将参数填入到Run-Run configurations->arguments下即可。
3.总结
以上即为java.lang.ClassNotFoundException
的解决方法。
欢迎大家转载,转载时请注明出处:
snowlive’blog
http://blog.csdn.net/snowlive
0 0
- Hadoop问题解决之:java.lang.ClassNotFoundException:com.demo.Demo$DemoMapper
- Eclipse 调试Hadoop java.lang.ClassNotFoundException问题解决
- java.lang.ClassNotFoundException: com.hadoop.WordCount$Map
- java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver问题解决
- java.lang.ClassNotFoundException: com.google.gson.Gson 问题解决
- demo-java.lang.reflect
- java.lang.NoSuchMethodException: com.lxy.demo.BookAction.store()
- Exception in thread "main" java.lang.NoClassDefFoundError: Demo (wrong name: com/zhangyun/Demo)解决办法
- Caused by: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver问题解决方案
- Error: java.lang.ClassNotFoundException: org.apache.hadoop.hbase.mapreduce.TableInputFormatBase问题解决办
- java.lang.ClassNotFoundException: org.hibernate.Session问题解决
- spark取得lzo压缩文件报错 java.lang.ClassNotFoundException: Class com.hadoop.compression.lzo.LzoCodec
- java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
- java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
- java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
- java.lang.ClassNotFoundException: com.google.gson.Gson”
- java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
- java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
- Codeforces 55D Beautiful Number (数位dp)
- 微信小程序文件上传java服务器端wx:uploadFile()
- SEO笔记
- ThreadLocalRandom
- Xcode8 及iOS10适配问题汇总
- Hadoop问题解决之:java.lang.ClassNotFoundException:com.demo.Demo$DemoMapper
- 警告: Could not find action or result There is no Action mapped for namespace / and action name
- Hadoop(一) 之 安装Hadoop
- iOS 常用三方库
- 互联网&IT技术一周大事件汇总
- 电路啸叫的原因????!!!!!
- LightOJ 1213 Fantasy of a Summation
- python获取指定路径下的所有文件
- sybase复制服务