在window上运行spark程序写到本地文件的时候报错。
val rdd = sc.sparkContext.parallelize(list)val arr = rdd.collect()arr.foreach(println)rdd.saveAsTextFile("test1")sc.close()
错误信息:
zhangsan
lisi
wangwu
Exception in thread "main" ExitCodeException exitCode=-1073741701: at org.apache.hadoop.util.Shell.runCommand(Shell.java:1009)at org.apache.hadoop.util.Shell.run(Shell.java:902)at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:1227)at org.apache.hadoop.util.Shell.execCommand(Shell.java:1321)at org.apache.hadoop.util.Shell.execCommand(Shell.java:1303)at org.apache.hadoop.fs.RawLocalFileSystem.setPermission(RawLocalFileSystem.java:777)at org.apache.hadoop.fs.RawLocalFileSystem.mkOneDirWithMode(RawLocalFileSystem.java:522)at org.apache.hadoop.fs.RawLocalFileSystem.mkdirsWithOptionalPermission(RawLocalFileSystem.java:562)
前提:
添加了HADOOP_HOME环境变量,指向了window的hadoop环境。
然后再运行程序的时候报错的。
运行时写本地window磁盘报错:Exception in thread “main” ExitCodeException exitCode=-1073741701:
at org.apache.hadoop.util.Shell.runCommand(Shell.java:1009)
解决方法:
以下这些文件百度都可以搜的到,偷懒的就去下面资源文件下载,好像还在审核中。msvcr120.dll文件缺失
方法一:
现在大部分操作系统应该都是64位了,以下2个都放。
msvcr120文件夹中64位放C:\Windows\SysWOW64目录。
msvcr120文件夹中32位放C:\Windows\System32目录。方法二(大招):
方法一仍然不行的话,就使用方法二:
安装vc++合集,直接运行安装。
MSVBCRT_AIO_2018.07.31_X86+X64.exe
安装好后,运行正常。
相关资源链接:
https://download.csdn.net/download/wang6733284/89529247