ERROR util.Shell: Failed to locate the winutils binary in the hadoop binary path

每日一句正能量

让我们静下心来审视一下自己,是不是忙得有价值,忙得有意义,忙得有目的,看一看我们是不是因为忙而迷失了自己。如果我们仅是为了忙而忙,那不妨让自己停一下疲于奔命的脚步,用心体味一下生活,你会发现生活中未被发掘的美。

前言

这个错误通常出现在使用Hadoop时,因为Hadoop需要使用winutils二进制文件来模拟一些Unix命令,但是这个二进制文件在本地机器上找不到。解决这个问题的方式是安装winutils并将其路径添加到系统环境变量中。

报错显示

   有同学在 Windows 操作系统上运行Hadoop或者Spark的时候会在控制台中遇到以下错误:

报错一

WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

ERROR Shell: Failed to locate the winutils binary in the hadoop binary path java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.

报错一

ERROR util.Shell: Failed to locate the winutils binary in the hadoop binary path
java.io.IOException: Could not locate executable C:\hadoop\bin\winutils.exe in the Hadoop binaries

错误原因

  这是因为你的 Hadoop 发行版不包含适用于 Windows 操作系统的二进制文件,它们不包含在官方 Hadoop 发行版中。因此,需要在 Windows 操作系统上从其源代码构建 Hadoop。

  还有因为 hadoop 默认的是 Linux 环境,如果在 Windows 上运行 hadoop 的话,必须下载该文件将对应版本中的文件放到 hadoop 所在目录下的 bin 文件中。下面来看一下解决方案。

解决方案

Hadoop 或者spark 错误的解决方案:
  此错误也与适用于 Windows 操作系统的本机 Hadoop 二进制文件有关。因此解决方案与上述 Spark 问题相同。

  我们可以去网上下载winutils-master文件,解压后里面的bin目录文件夹包含winutils.exehadoop.dll,我们将这两个文件复制到hadoop的bin目录文件夹下即可。
如下图所示:
在这里插入图片描述
在这里插入图片描述

链接地址如下:

winutils-master:https://gitcode.net/mirrors/cdarlint/winutils/-/archive/master/winutils-master.zip

Github:https://github.com/4ttty/winutils/tree/master/hadoop-3.0.0/bin

上面的失效了就使用下面百度网盘的这个:

链接:https://pan.baidu.com/s/1t2yhgv2WZBT5zmd3OzHoDg

提取码:tsun

注意:对应着hadoop版本下载,实在对不上就凑合着用相近版本或前一个版本的

结语

  每个人刚开始学习的时候都是小白,这个过程中或多或少的都会看看别人写的博客,过程中也可能会踩过很多坑。遇到问题的时候,我们可以记录下来,不管是对自己还是对其他学习的小伙伴都很有帮助。程序员大多都是很孤独的,写作也可以让自己的孤独“有处安放”,多去表达,多点表达,对于不善言辞的程序员总是有很多好处,博文写作的过程中最重要的是思路清晰有条理,和敲代码最大的不同是,编程有了明确的目标,日复一日必成高手,而写作如果只是为了写而写,往往会失了初心,丢了本真。写作不仅可以提高言语表达能力,更可以培养持续做事情的毅力,最好得是能遇到很多志同道合的朋友。

转载自:https://blog.csdn.net/u014727709/article/details/131194359
欢迎 👍点赞✍评论⭐收藏,欢迎指正

  • 25
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 28
    评论
评论 28
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

想你依然心痛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值