eclipse下提交job时报错mapred.JobClient: No job jar file set. User classes may not be found.

简介:

windows下,连接远程集群,直接在eclipse里运行mapreduce作业时,

错误信息:

11/10/14 13:52:07 WARN mapred.JobClient: Use GenericOptionsParser for parsing the arguments. Applications should implement Tool for the same.
11/10/14 13:52:07 WARN mapred.JobClient: No job jar file set.  User classes may not be found. See JobConf(Class) or JobConf#setJar(String).
11/10/14 13:52:07 INFO input.FileInputFormat: Total input paths to process : 5
11/10/14 13:52:07 INFO mapred.JobClient: Running job: job_201110141041_0014
11/10/14 13:52:08 INFO mapred.JobClient:  map 0% reduce 0%
11/10/14 13:52:19 INFO mapred.JobClient: Task Id : attempt_201110141041_0014_m_000000_0, Status : FAILED
java.lang.RuntimeException: java.lang.ClassNotFoundException: Finger$FingerMapper1
    at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:809)
    at org.apache.hadoop.mapreduce.JobContext.getMapperClass(JobContext.java:157)
    at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:569)

    at org.apache.hadoop.mapred.MapTask.run(MapTask.java:305)

。。。。

出错的原因就是找不到Mapper类和Reduce类。

单机运行的时候是不会存在这个问题的,但是现在是提交到远程集群直接运行,就会出现问题了,原因可以参考这篇文章:http://blog.csdn.net/andyelvis/article/details/7706205

解决办法:

将本工程导出jar包放到工程根目录下面,并在提交程序前添加下面的设置

conf.set("mapred.jar", "loadforecast_utils.jar"); //其中loadforecast_utils.jar是你的导出的jar文件名。注意第一个参数不要拼写错了。

重新运行问题解决!











本文转自 落花非有意  51CTO博客,原文链接:http://blog.51cto.com/1992zhong/1692399,如需转载请自行联系原作者
目录
相关文章
|
8月前
|
Java Android开发
Eclipse把引用的jar包隐藏掉
Eclipse把引用的jar包隐藏掉
|
5月前
|
Java 应用服务中间件 Android开发
IDEA Eclipse项目如何导入tomcat里面的jar包
IDEA Eclipse项目如何导入tomcat里面的jar包
65 0
|
7月前
|
Java Android开发
eclipse中Java文件生成jar包
eclipse中Java文件生成jar包
47 0
|
11月前
|
Android开发
Eclipse 导入项目提示No projects are found to import解决办法
使用Eclipse导入项目时遇到No projects are found to import提示的解决办法。 这是因为导入的文件里面缺少两个文件: .classpath .project 在这里三种方案: 1、其他项目中直接复制这两个文件,然后更改一下“.project”文件中的项目名即可 2、在Eclipse中新建一个项目,与需要导入的项目名一致,然后将项目代码文件直接复制到新项目中即可 3、或者自己新建文件填入以下信息:
485 0
|
Java Maven Android开发
eclipse中,将springboot项目打成jar包并发布
eclipse中,将springboot项目打成jar包并发布
176 0
|
Java Linux Android开发
eclipse的jar包在Linux中报错
eclipse的jar包在Linux中报错
eclipse的jar包在Linux中报错
|
Android开发
错误: 程序包org.eclipse.swt.graphics不存在/swt.jar下载方法
错误: 程序包org.eclipse.swt.graphics不存在/swt.jar下载方法
79 0
|
开发工具 Android开发
eclipse Unable to build: the file dx.jar was not loaded from the SDK folder的解决办法
eclipse Unable to build: the file dx.jar was not loaded from the SDK folder的解决办法
87 0
|
Java Android开发
配置eclipse查看引入jar包的源码
当我们引入jar包后想查看其中的一些方法的时候: 出现:the source attachment does not contain 的问题的时候。 原因我想大概一般是jar包里的都是.class文件,是编译后的文件,我们若想要查看其.java 文件,就需要进行相应的配置,让eclipse能反编译它并且查看。 配置过程如下:
358 0
配置eclipse查看引入jar包的源码
|
Java API Apache
eclipse导入外部jar包
eclipse导入外部jar包
eclipse导入外部jar包