spark 运行wc-demo报错归总(saveAsTextFile方法)
-
核心报错日志
org.apache.hadoop.io.nativeio.NativeIO$Windows.createFileWithMode0(Ljava/lang/String;JJJI)Ljava/io/FileDescriptor
-
错误原因
在linux上运行成功的demo,代码放到win上就运行失败,则可以确定是系统的不兼容问题
根据查找的各种资料可以总结出是由于 win系统缺少了hadoop持久化数据的时候的hadoop.dll和winutil.exe文件
-
解决步骤
-
这是一个官方的bug,因此为了统一解决此问题,官方提供了GitHub链接https://github.com/steveloughran/winutils 下载即可,50多m的大小
-
-
找到下载文件中的和本机Hadoop大版本符合的文件下的bin,复制覆盖掉本地的hadoop中的bin,有的是让只复制hadoop.dll和winutil.exe。但是既然官方都直接给了bin,那就直接覆盖掉
-
打开bin,复制hadoop.dll和winutil.exe,粘贴到C:\Windows\System32文件夹下。
-
我是在idea中运行的wc-demo,因此rebuild了一下,再run。rdd.saveAsTextFile("targetPath") 运行成功。
-
-
结语
等我先恰个🍎

浙公网安备 33010602011771号