Windows Eclipse中进行WordCount报错org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/Strin

报错:Exception inthread "main" java.lang.UnsatisfiedLinkError:org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/String;I)Z

解决: C:\Windows\System32下缺少hadoop.dll(hadoop-3.0.0\bin目录下)把这个文件拷贝到C:\Windows\System32下面,重启电脑。

 

继续报错:

Exception in thread "main"java.lang.UnsatisfiedLinkError:org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/String;I)Z

   atorg.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Native Method)

   atorg.apache.hadoop.io.nativeio.NativeIO$Windows.access(NativeIO.java:606)

解决:Windows的唯一方法用于检查当前进程的请求,在给定的路径的访问权限,所以我们先给以能进行访问,我们自己先修改源代码,return true 时允许访问。我们下载对应hadoop源代码,hadoop-3.0.0-src.tar 解压,hadoop-3.0.0-src\hadoop-3.0.0-src\hadoop-common-project\hadoop-common\src\main\java\org\apache\hadoop\io\nativeioNativeIO.java复制到对应的Eclipseproject,然后修改608行为return true如图所示:



报错:Permission denied: user=administrator, access=WRITE, inode="/":navy:supergroup:drwxr-xr-x
很显然是是 用户Administator在hadoop上执行写操作时被权限系统拒绝.
修改 hadoop fs -chmod 777 / 即可

猜你喜欢

转载自blog.csdn.net/qfxsxhfy/article/details/79672376