Exception: org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/String;I)Z

学习Hadoop MapReduce使用的过程中报错,检查环境变量配置无误,看到很多解决方案说:

C:\Windows\System32下缺少hadoop.dll,把这个文件拷贝到C:\Windows\System32下

照做之后仍然报同样的错误。

注意到一个解决方案说在代码中加入静态代码块:

```java

static {

        try {

            System.load("C:\\Users\\whz\\Downloads\\hadoop2.7.6\\bin\\hadoop.dll");

        } catch (UnsatisfiedLinkError e) {

            System.err.println("Native code library failed to load.\n" + e);

            System.exit(1);

        }

    }

```

之后报错为:can't load amd 64-bit .dll on a ia 32-bit platform

出现这个错误的原因是hadoop.dll是64位的,而我的JDK是32位的,更换JDK问题解决。

你可能感兴趣的:(Exception: org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/String;I)Z)