WordCount not Found Exception

Exception in thread "main" java.lang.ClassNotFoundException: WordCount
        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:247)

        at org.apache.hadoop.util.RunJar.main(RunJar.java:149)


生成jar文件使用的命令是jar -cvf wordcount.jar -C WordCount;(编译生成的class文件放在WordCount文件夹内)导致出现找不到WordCount类,但是jar包里明明有WordCount类。为何寻找不到?

将生成jar文件改成jar -cvf wordcount.jar manifest -C WordCount/ . 后。在bin/hadoop jar wordcount.jar WordCount wordcount_input wordcount_output后,运行成功不报错。

至于为何?应该是manifest将其class类显示出来,以便类能够被找到。manifest是生存jar的描述性文件,有了manifest,就给程序提供了如何在里面寻找class的方法与路径,故而就不出现classnotfoundexception的错误了。


15/04/24 07:15:35 INFO input.FileInputFormat: Total input paths to process : 2
15/04/24 07:15:36 INFO util.NativeCodeLoader: Loaded the native-hadoop library
15/04/24 07:15:36 WARN snappy.LoadSnappy: Snappy native library not loaded
15/04/24 07:15:37 INFO mapred.JobClient: Running job: job_201504231843_0003
15/04/24 07:15:38 INFO mapred.JobClient:  map 0% reduce 0%
15/04/24 07:17:04 INFO mapred.JobClient:  map 50% reduce 0%
15/04/24 07:17:07 INFO mapred.JobClient:  map 100% reduce 0%
15/04/24 07:17:23 INFO mapred.JobClient:  map 100% reduce 100%
15/04/24 07:17:28 INFO mapred.JobClient: Job complete: job_201504231843_0003
15/04/24 07:17:28 INFO mapred.JobClient: Counters: 29
15/04/24 07:17:28 INFO mapred.JobClient:   Job Counters 
15/04/24 07:17:28 INFO mapred.JobClient:     Launched reduce tasks=1
15/04/24 07:17:28 INFO mapred.JobClient:     SLOTS_MILLIS_MAPS=147860
15/04/24 07:17:28 INFO mapred.JobClient:     Total time spent by all reduces waiting after reserving slots (ms)=0
15/04/24 07:17:28 INFO mapred.JobClient:     Total time spent by all maps waiting after reserving slots (ms)=0
15/04/24 07:17:28 INFO mapred.JobClient:     Launched map tasks=2
15/04/24 07:17:28 INFO mapred.JobClient:     Data-local map tasks=2
15/04/24 07:17:28 INFO mapred.JobClient:     SLOTS_MILLIS_REDUCES=17613
15/04/24 07:17:28 INFO mapred.JobClient:   File Output Format Counters 
15/04/24 07:17:28 INFO mapred.JobClient:     Bytes Written=150
15/04/24 07:17:28 INFO mapred.JobClient:   FileSystemCounters
15/04/24 07:17:28 INFO mapred.JobClient:     FILE_BYTES_READ=232
15/04/24 07:17:28 INFO mapred.JobClient:     HDFS_BYTES_READ=378
15/04/24 07:17:28 INFO mapred.JobClient:     FILE_BYTES_WRITTEN=65245
15/04/24 07:17:28 INFO mapred.JobClient:     HDFS_BYTES_WRITTEN=150
15/04/24 07:17:28 INFO mapred.JobClient:   File Input Format Counters 
15/04/24 07:17:28 INFO mapred.JobClient:     Bytes Read=130
15/04/24 07:17:28 INFO mapred.JobClient:   Map-Reduce Framework
15/04/24 07:17:28 INFO mapred.JobClient:     Map output materialized bytes=238
15/04/24 07:17:28 INFO mapred.JobClient:     Map input records=8
15/04/24 07:17:28 INFO mapred.JobClient:     Reduce shuffle bytes=238
15/04/24 07:17:28 INFO mapred.JobClient:     Spilled Records=38
15/04/24 07:17:28 INFO mapred.JobClient:     Map output bytes=218
15/04/24 07:17:28 INFO mapred.JobClient:     CPU time spent (ms)=7040
15/04/24 07:17:28 INFO mapred.JobClient:     Total committed heap usage (bytes)=247537664
15/04/24 07:17:28 INFO mapred.JobClient:     Combine input records=22
15/04/24 07:17:28 INFO mapred.JobClient:     SPLIT_RAW_BYTES=248
15/04/24 07:17:28 INFO mapred.JobClient:     Reduce input records=19
15/04/24 07:17:28 INFO mapred.JobClient:     Reduce input groups=19
15/04/24 07:17:28 INFO mapred.JobClient:     Combine output records=19
15/04/24 07:17:28 INFO mapred.JobClient:     Physical memory (bytes) snapshot=336658432
15/04/24 07:17:28 INFO mapred.JobClient:     Reduce output records=19
15/04/24 07:17:28 INFO mapred.JobClient:     Virtual memory (bytes) snapshot=1123164160
15/04/24 07:17:28 INFO mapred.JobClient:     Map output records=22

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值