我试图在windows机器上安装Hadoop,中间我得到了下面的错误。
日志
17/11/28 16:31:48 ERROR namenode.NameNode: Failed to start namenode.
java.lang.UnsatisfiedLinkError: org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/String;I)Z
at org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Native Method)
at org.apache.hadoop.io.nativeio.NativeIO$Windows.access(NativeIO.java:609)
at org.apache.hadoop.fs.FileUtil.canWrite(FileUtil.java:996)
at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.analyze
Storage(Storage.java:490)
at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverStorageDirs(FSImage.java:369)
at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverTransitionRead(FSImage.java:225)
at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFSImage(FSNamesystem.java:978)
at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFromDisk(FSNamesystem.java:685)
at org.apache.hadoop.hdfs.server.namenode.NameNode.loadNamesystem(NameNode.java:585)
at org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:645)
at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:819)
at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:803)
at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1500)
at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1566)发布于 2017-11-29 00:42:22
看起来您没有安装Hadoop winutils,也没有用本地库构建Hadoop
本机IO在Windows上是强制性的,如果没有它,您的安装将无法工作。您必须遵循BUILDING.txt的所有说明,以确保正确构建了本机IO支持
发布于 2017-12-05 09:08:27
我也有类似的问题。我正在使用Hadoop-2.8.1。这些步骤为我解决了错误。
从GitHub下载版本的winutils
在<HADOOP_HOME>/bin/复制粘贴酒杯
还有。在hadoop-env.cmd文件中正确设置和引用双重检查JAVA_HOME环境
https://stackoverflow.com/questions/47530162
复制相似问题