hadoop异常:java.lang.RuntimeException: java.lang.NoSuchMethodException

时间:2022-08-23 18:17:38

出现异常的程序大致框架是这样的:

public class getMaxTemperature  extends Configured implements Tool {

              ...
   class MaxTemperatureMapper extends Mapper<LongWritable, Text, Text, IntWritable> {
              ...
   }
         class MaxTemperatureReducer extends Reducer<Text, IntWritable, Text, IntWritable> {
              ...
   }
   @Override
   public int run(String[] args) throws Exception {
        job.setMapperClass(MaxTemperatureMapper.class);
        job.setCombinerClass(MaxTemperatureReducer.class);
        job.setReducerClass(MaxTemperatureReducer.class);
   }

   public static void main(String[] args) throws Exception {
        ToolRunner.run(new getMaxTemperature() , args);
   }}

出错原因在于:

  1. 如果给job的MapperClass和ReducerClass是内部类,必须声明此类为static.

  2. hadoop不能instantiate用户自定义的内部类,这样会造成错误。

解决方法:

  1. 将内部类申明为public  : public class MaxTemperatureMapper

  2. 或者,将内部类定义为静态的: static class MaxTemperatureMapper

hadoop异常:java.lang.RuntimeException: java.lang.NoSuchMethodException的更多相关文章

  1. java&period;lang&period;RuntimeException&colon; java&period;lang&period;NoSuchMethodException&colon;

    [java] 15/12/19 14:09:46 INFO mapred.JobClient: Task Id : attempt_201512182036_0017_m_000000_0, Stat ...

  2. 出现java&period;lang&period;Exception&colon; java&period;lang&period;RuntimeException&colon; java&period;lang&period;NoSuchMethodException&colon; com&period;web&period;visit&period;main&period;ClickVist&dollar;VisitMapper&period;&lt&semi;init&gt&semi;&lpar;&rpar;的问题

    执行mapreduce报错java.lang.Exception: java.lang.RuntimeException: java.lang.NoSuchMethodException: com.w ...

  3. MapReduce错误之Error&colon; java&period;lang&period;RuntimeException&colon; java&period;lang&period;NoSuchMethodException的解决方法

    今天跑MapReduce项目的时候遇到了这个问题,日志如下所示: // :: DEBUG ipc.ProtobufRpcEngine: Call: getDiagnostics took 19ms E ...

  4. Exception in thread &quot&semi;main&quot&semi; java&period;lang&period;RuntimeException&colon; java&period;lang&period;RuntimeException&colon; Unable to instantiate org&period;apache&period;hadoop&period;hive&period;metastore&period;HiveMetaStoreClient

    hive安装时遇到的问题 解压后指定了hive-env.sh文件的Hadoop_home  & hive_conf 两个参数后,先直接bin/hive 用Derby数据库启动一下,然后再配置其 ...

  5. Storm 执行异常 java&period;lang&period;RuntimeException&colon; java&period;nio&period;channels&period;UnresolvedAddressException 问题解决

    最近写的 binlog2kafka storm job 上线在一个新的集群环境中(storm 0.9.0.1, kafka 0.8), storm job 运行时报出如下异常: java.lang.R ...

  6. java&period;lang&period;RuntimeException&colon; java&period;lang&period;ClassNotFoundException&colon; cmd&period;CmdWordCount&dollar;MyMapper解决方法

    14/02/28 20:29:48 INFO mapred.JobClient: Task Id : attempt_201402281833_0004_m_000000_1, Status : FA ...

  7. storm supervisor启动报错java&period;lang&period;RuntimeException&colon; java&period;io&period;EOFException

    storm因机器断电或其他异常导致的supervisor意外终止,再次启动时报错: 1. 2013-09-24 09:15:44,361 INFO [main] daemon.supervisor ( ...

  8. java&period;lang&period;RuntimeException&colon; java&period;sql&period;SQLSyntaxErrorException&colon; ORA-00911&colon; 无效字符

    这种情况可能是因为在设置数据库的时候,没有配置数据库的方言,导致sql语句无法被识别. 例如在配置Jfinal的配置文件的时候 如果不配置数据库的方言,默认下它是MySQL的,当使用oracle数据库 ...

  9. QA&colon;java&period;lang&period;RuntimeException&colon;java&period;io&period;FileNotFoundException&colon;Resource nexus-maven-repository-index&period;properties does not exist&period;

    QA:java.lang.RuntimeException:java.io.FileNotFoundException:Resource nexus-maven-repository-index.pr ...

  10. Android Studio 首次安装报错 Java&period;lang&period;RuntimeException&colon;java&period;lang&period;NullPointerException&period;&period;&period;错

    下次安装报:Java.lang.RuntimeException: java.lang.NullPointerException......错 只需在文件..\Android Studio\bin\i ...

随机推荐

  1. js&lowbar;保留关键字

    网页可以被我们分为三个大的部分:结构,表现,形式而js就是专对于表现的,js是一门编程的解释性脚本语言,和其他的语言相同js也有自己的保留的关键字,下面我们来看看js保留的关键字吧!js一共有56个关 ...

  2. SharpDevelop学习笔记(5)—— AddIns系统详解

    在所有的插件被加载到指定的扩展点后,插件树就被创建完毕了, 但是,我们知道,插件树创建后,每个插件在插件树的位置在就固定的,但是,如果某些情况下,我们希望一些插件不可使用或应该隐藏起来, 或者说有的插 ...

  3. easyUI中datetimebox和combobox的取值方法

    easyUi页面布局中,查询条件放在JS中,如下 <script type="text/javascript"> var columnList = [ [   {    ...

  4. POJ 1054 The Troublesome Frog(枚举&plus;剪枝)

    题目链接 题意 :给你r*c的一块稻田,每个点都种有水稻,青蛙们晚上会从水稻地里穿过并踩倒,确保青蛙的每次跳跃的长度相同,且路线是直线,给出n个青蛙的脚印点问存在大于等于3的最大青蛙走的连续的脚印个数 ...

  5. BZOJ 1083 &lbrack;SCOI2005&rsqb;繁忙的都市

    1083: [SCOI2005]繁忙的都市 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1664  Solved: 1080[Submit][Sta ...

  6. Android 4&period;4堆叠结构的变化

    我们知道,activity 在 AMS 的形式是 ActivityRecord,task 在 AMS 的形式TaskRecord,流程 AMS 该管理形式 ProcessRecord. 我们先看下 4 ...

  7. ChartControl ViewType&period;Pie3D 用法测试

    效果图一. public partial class Form3 : Form { public Form3() { InitializeComponent(); } private void For ...

  8. 数据库语法group by

    因为在做pgsql和mysql数据库时group by 有报错,但是在以前做mysql5.6的时候没有问题,虽然知道时违反了sql的语法问题,但是没有搞清楚什么原因,也找了不少资料,查找原因,在盆友的 ...

  9. &lbrack;android&rsqb; 看博客学习hashCode&lpar;&rpar;和equals&lpar;&rpar;

    equals()是Object类提供的一个方法,众所周知,每一个java类都继承自Object,所以说每一个对象都有一个equals()方法,我们在用这个方法时却一般重写这个方法 Object类中eq ...

  10. HDU 4336 Card Collector 期望dp&plus;状压

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4336 Card Collector Time Limit: 2000/1000 MS (Java/O ...