Exception in thread “main“ java.lang.UnsatisfiedLinkError: org.apache.hadoop.io.nativ

前言

MapReduce学习的时候,读取文件夹下的所有文件,出现该报错,这里简单记录解决办法。

问题还原

项目结构

在这里插入图片描述

RddFile源码

该代码主要是读取Resource下的所有txt文件汇总成RDD流进行打印输出。

    public static void main(String[] args) {
        SparkConf conf = new SparkConf().setMaster("local").setAppName("file");
        try (JavaSparkContext ctx = new JavaSparkContext(conf)) {
            JavaPairRDD<String, String> rdd = ctx.wholeTextFiles(new File(PATH).getParentFile().getCanonicalPath() +
                    File.separator + "*.txt");
            rdd.collect().forEach(System.out::println);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

启动之后报如下的错Exception in thread "main" java.lang.UnsatisfiedLinkError: org.apache.hadoop.io.nativ...

解决办法

找到箭头所指的文件
在这里插入图片描述
复制到如下文件夹
在这里插入图片描述
重新启动程序,问题解决