我是靠谱客的博主 爱撒娇小馒头,最近开发中收集的这篇文章主要介绍【已解决】关于IDEA中 Driver 出现Exception in thread ";main"; java.lang.NullPointerException问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

在学习hive过程中,按照mapreduce编程规范,分别编写Mapper,Reducer,Driver,在编写Driver后运行报错了,花了两天,找到了解决方案(裂开.JPG)。
代码:
package com.miao;

import org.apache.hadoop.conf.Configuration;
        import org.apache.hadoop.fs.Path;
        import org.apache.hadoop.io.IntWritable;
        import org.apache.hadoop.io.Text;
        import org.apache.hadoop.mapreduce.Job;
        import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
        import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;

public class WCDriver {

    public static void main(String[] args) throws Exception {
        // 1 创建一个配置对象
        Configuration conf = new Configuration();
        // 2 通过配置对象获取一个job对象
        Job job = Job.getInstance(conf);
        // 3 设置job的jar包
        job.setJarByClass(WCDriver.class);
        // 4 设置job的mapper类,reduce类
        job.setMapperClass(WCMapper.class);
        job.setReducerClass(WCReducer.class);
        // 5 设置mapper的keyout和valueout
        job.setMapOutputKeyClass(Text.class);
        job.setMapOutputValueClass(IntWritable.class);
        // 6 设置最终输出数据的keyout和valueout
        job.setOutputKeyClass(Text.class);
        job.setOutputValueClass(IntWritable.class);
        // 7 设置输入数据的路径和输出数据的路径---
        FileInputFormat.setInputPaths(job,new Path(args[0])); // 也可以写死路径
        //注意输出目录不能事先存在,必须设置一个不存在的目录,框架会自行创建,否则就会报错
        FileOutputFormat.setOutputPath(job,new Path(args[1])); // 也可以写死路径
        // 8 向yarn或者本地yarn模拟器提交任务
        boolean res = job.waitForCompletion(true);
        System.out.println("是否成功:"+res);

    }

}

报错:

Exception in thread "main" java.lang.NullPointerException

原因:

在设置路径时那儿没有指定路径,或者指定了已经存在的路径。

解决:

 1.点击此处去设置传输文件的保存路径

 

2.编辑路径(前一个为原本文本文档的路径,第二个为IDEA上要传的文件所要传到电脑本机的路径,我这里选择同样传到E盘的将会被IDEA自动新建的名为abc的文件夹里)

 3.然后运行你的Driver.java,就会成功了。(如果上传的文件夹路径是电脑存在的,依旧会报错,所以设置路径时一定需要取一个电脑里没有的文件夹名字!)

orz 报错时搜遍全网,找了两天都没看到解决这个的帖子,记录一下。

当然我是学这个的菜逼,还是很多不懂。。

最后

以上就是爱撒娇小馒头为你收集整理的【已解决】关于IDEA中 Driver 出现Exception in thread ";main"; java.lang.NullPointerException问题的全部内容,希望文章能够帮你解决【已解决】关于IDEA中 Driver 出现Exception in thread ";main"; java.lang.NullPointerException问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(36)

评论列表共有 0 条评论

立即
投稿
返回
顶部