zoukankan      html  css  js  c++  java
  • [解决]Hadoop 2.4.1 UnsatisfiedLinkError: org.apache.hadoop.io.nativeio.NativeIO$Windows.access0

    问题:UnsatisfiedLinkError: org.apache.hadoop.io.nativeio.NativeIO$Windows.access0

    我的系统 win7 64位

    Hadoop 2.4.1

    已经放入Github 的 hadoop common bin

    jdk 是64位的

    问题依旧

    UnsatisfiedLinkError: org.apache.hadoop.io.nativeio.NativeIO$Windows.access0

    这个问题 花我一晚上以及一上午

    系统的环境变量 设置了HADOOP_HOME

    而且还设置了PATH=%HADOOP_HOME%in

    还是不对

    那么经过一晚上的baidu Google 只说了上面的问题,而提到最多的是hadoop.dll,那么我就强制加载hadoop.dll看看

    在代码的Class中加入

    static {
    	    try {
    	    	System.load("D:/hadoop-2.4.1/bin/hadoop.dll");
    	    } catch (UnsatisfiedLinkError e) {
    	      System.err.println("Native code library failed to load.
    " + e);
    	      System.exit(1);
    	    }
    	  }
    

    强制性加载一下hadoop.dll

    结果出现

    java.lang.UnsatisfiedLinkError: D:hadoop-2.4.1inhadoop.dll: Can't load AMD 64-bit .dll on a IA 3

    那么我看到 Eclipse的console

    <terminated>WordCount [Java Application] C:Program Files (x86)Javajdk1.7.0_45injavaw.exe

    于是立马去改Eclipse的JDK : Windows - Preference - Java - Installed JREs- 然后在右边 添加你的64位的 JDK的路径。

    然后 确保勾选 64位的JDK

    然后就可以去掉这段代码,就能正常加载Hadoop.dll

  • 相关阅读:
    QinQ基础知识
    mysql执行sql脚本时--force的作用
    docker的thin pool 和 ulimit问题
    使用MAT来进行java内存问题的简单分析
    自己对DHCP的理解
    根据类名找jar包和maven坐标
    curl在windows下和linux中使用的一个区别
    JAVA实现LRU算法
    经典买票并发
    AQS学习
  • 原文地址:https://www.cnblogs.com/slankka/p/9158580.html
Copyright © 2011-2022 走看看