Hadoop:无法为您的平台加载本机Hadoop库。使用内置java类>;如适用

Hadoop:无法为您的平台加载本机Hadoop库。使用内置java类>;如适用,java,hadoop,Java,Hadoop,我正在尝试使用以下命令配置hadoop并格式化namenode: $hdfs namenode-格式 然而,我不断地得到这个错误。我怎样才能修好它 2017-06-20 12:22:25792警告util.NativeCodeLoader:无法加载 适用于您的平台的本机hadoop库。。。使用内置java类 如果适用^[[A2017-06-20 12:22:28825警告ipc.客户端:失败 要连接到服务器:localhost/127.0.0.1:9000:尝试一次,失败。 java.net.C

我正在尝试使用以下命令配置hadoop并格式化namenode:

$hdfs namenode-格式

然而,我不断地得到这个错误。我怎样才能修好它

2017-06-20 12:22:25792警告util.NativeCodeLoader:无法加载 适用于您的平台的本机hadoop库。。。使用内置java类 如果适用^[[A2017-06-20 12:22:28825警告ipc.客户端:失败 要连接到服务器:localhost/127.0.0.1:9000:尝试一次,失败。 java.net.ConnectException:连接在被拒绝 sun.nio.ch.socketchannelpl.checkConnect(本机方法)位于 sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:717) 在 org.apache.hadoop.net.SocketIOWithTimeout.connect(SocketIOWithTimeout.java:206) 位于org.apache.hadoop.net.NetUtils.connect(NetUtils.java:531) org.apache.hadoop.net.NetUtils.connect(NetUtils.java:495)位于 org.apache.hadoop.ipc.Client$Connection.setupConnection(Client.java:681) 在 org.apache.hadoop.ipc.Client$Connection.setupIOstreams(Client.java:777) 在 org.apache.hadoop.ipc.Client$Connection.access$3500(Client.java:408) 位于org.apache.hadoop.ipc.Client.getConnection(Client.java:1542) org.apache.hadoop.ipc.Client.call(Client.java:1373)位于 org.apache.hadoop.ipc.Client.call(Client.java:1337)位于 org.apache.hadoop.ipc.protobufrpceengine$Invoker.invoke(protobufrpceengine.java:227) 在 org.apache.hadoop.ipc.protobufrpceengine$Invoker.invoke(protobufrpceengine.java:115) 位于com.sun.proxy.$Proxy11.getFileInfo(未知源) org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.getFileInfo(ClientNamenodeProtocolTranslatorPB.java:812) 位于的sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法) invoke(NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 位于java.lang.reflect.Method.invoke(Method.java:498) org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:398) 在 org.apache.hadoop.io.retry.RetryInvocationHandler$Call.invokeMethod(RetryInvocationHandler.java:163) 在 org.apache.hadoop.io.retry.RetryInvocationHandler$Call.invoke(RetryInvocationHandler.java:155) 在 org.apache.hadoop.io.retry.RetryInvocationHandler$Call.invokeOnce(RetryInvocationHandler.java:95) 在 org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:335) 位于com.sun.proxy.$Proxy12.getFileInfo(未知源) org.apache.hadoop.hdfs.DFSClient.getFileInfo(DFSClient.java:1638)位于 DistributedFileSystem$27.doCall(DistributedFileSystem.java:1367) 在 DistributedFileSystem$27.doCall(DistributedFileSystem.java:1364) 在 org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81) 在 org.apache.hadoop.hdfs.DistributedFileSystem.getFileStatus(DistributedFileSystem.java:1379) 位于org.apache.hadoop.fs.Globber.getFileStatus(Globber.java:64) org.apache.hadoop.fs.Globber.doGlob(Globber.java:269)位于 org.apache.hadoop.fs.Globber.glob(Globber.java:148)位于 org.apache.hadoop.fs.FileSystem.globStatus(FileSystem.java:1960)位于 org.apache.hadoop.fs.shell.PathData.expandAsGlob(PathData.java:326) 在 org.apache.hadoop.fs.shell.Command.expandArgument(Command.java:239) 在 org.apache.hadoop.fs.shell.Command.expandArguments(Command.java:222) 在 org.apache.hadoop.fs.shell.FsCommand.processRawArguments(FsCommand.java:103) 位于org.apache.hadoop.fs.shell.Command.run(Command.java:166) org.apache.hadoop.fs.FsShell.run(FsShell.java:326)位于 org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76)位于 org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:90)位于 org.apache.hadoop.fs.FsShell.main(FsShell.java:389)ls:callfrom ubuntu/127.0.1.1到localhost:9000连接失败,连接异常: java.net.ConnectException:连接被拒绝;有关更多详细信息,请参阅: \错误:JAVA_HOME /opt/jdk1.8.0_91/不存在

2017-06-20 12:22:25792 WARN util.NativeCodeLoader:无法为您的平台加载本机hadoop库…在适用的情况下使用内置java类

Apache Hadoop可以与一个可选的本机库集成,该库包含实现更深入的操作系统集成的扩展以及某些功能的性能增强。有关更多详细信息,请参阅文档页

在许多情况下,对于客户端使用或开发人员设置,本机库扩展是可选的。但是,日志警告可能是一个麻烦。如果您想避开它,有几个选项:

  • 某些Apache Hadoop版本包含一个预构建的本机库。您可能会使用它。此捆绑库将使用Apache Hadoop版本构建中执行的任何操作系统/体系结构,因此不能保证它将匹配您自己的操作系统/体系结构。不要尝试混合和匹配不同版本的Hadoop代码和本机c否则,您可能会看到异常的链接错误
  • 自己构建本机库。这将保证构建与实际运行时操作系统/体系结构相匹配。除了上面链接的文档页面外,还有更多关于如何在文件中构建的具体说明。同样,匹配Hadoop代码和本机代码的版本很重要
  • 如果您使用的是商业供应商的发行版,那么他们可能已经注意到保证本机库已经正确设置和部署
  • 如果所有其他操作都失败,您可以通过向log4j.properties添加以下内容来抑制警告

    log4j.logger.org.apache.hadoop.util.NativeCodeLoader=ERROR

  • org.apache.hadoop.fs.FsShell.main(FsShell.java:389)ls:callfromsubuntu/127.0.1.1