当前位置: 首页 > 知识库问答 >
问题:

在windows中设置HADOOP_HOME变量

胡嘉歆
2023-03-14

我试图在Windows8中使用Spark和Hadoop。然而,无论我的代码是什么,我都会收到以下错误:

15/08/25 19:29:58 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.
    at org.apache.hadoop.util.Shell.getQualifiedBinPath(Shell.java:355)
    at org.apache.hadoop.util.Shell.getWinUtilsPath(Shell.java:370)
    at org.apache.hadoop.util.Shell.<clinit>(Shell.java:363)
    at org.apache.hadoop.util.StringUtils.<clinit>(StringUtils.java:79)
    at org.apache.hadoop.security.Groups.parseStaticMapping(Groups.java:104)
    at org.apache.hadoop.security.Groups.<init>(Groups.java:86)
    at org.apache.hadoop.security.Groups.<init>(Groups.java:66)
    at org.apache.hadoop.security.Groups.getUserToGroupsMappingService(Groups.java:280)
    at org.apache.hadoop.security.UserGroupInformation.initialize(UserGroupInformation.java:271)
    at org.apache.hadoop.security.UserGroupInformation.ensureInitialized(UserGroupInformation.java:248)
    at org.apache.hadoop.security.UserGroupInformation.loginUserFromSubject(UserGroupInformation.java:763)
    at org.apache.hadoop.security.UserGroupInformation.getLoginUser(UserGroupInformation.java:748)
    at org.apache.hadoop.security.UserGroupInformation.getCurrentUser(UserGroupInformation.java:621)
    at org.apache.spark.util.Utils$$anonfun$getCurrentUserName$1.apply(Utils.scala:2162)
    at org.apache.spark.util.Utils$$anonfun$getCurrentUserName$1.apply(Utils.scala:2162)
    at scala.Option.getOrElse(Option.scala:120)
    at org.apache.spark.util.Utils$.getCurrentUserName(Utils.scala:2162)
    at org.apache.spark.SparkContext.<init>(SparkContext.scala:301)
    at org.apache.spark.api.java.JavaSparkContext.<init>(JavaSparkContext.scala:61)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:234)
    at py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:379)
    at py4j.Gateway.invoke(Gateway.java:214)
    at py4j.commands.ConstructorCommand.invokeConstructor(ConstructorCommand.java:79)
    at py4j.commands.ConstructorCommand.execute(ConstructorCommand.java:68)
    at py4j.GatewayConnectionun(GatewayConnection.java:207)
    at java.lang.Thread.run(Unknown Source)
null\bin\winutils.exe

hadoop主路径为空。我试图将HADOOP_HOME设置为环境变量,但没有解决这个问题。

共有1个答案

莫宁
2023-03-14

我使用初学者中的以下部分代码解决了这个问题:

import sys
import os

os.environ['HADOOP_HOME'] = "C:/Mine/Spark/hadoop-2.6.0"
sys.path.append("C:/Mine/Spark/hadoop-2.6.0/bin")

希望这对某人有帮助,如果有人有更好的想法,我将非常感激。

 类似资料:
  • 问题内容: 更新 :正如问题中所解释的,这不是重复的,因为我已经尝试在环境变量之前添加 set 关键字,但这并不能解决问题。 我正在学习节点并从书中键入示例。第一个示例涉及显示“ http”模块如何工作以及如何创建服务器以侦听请求。本书有时要求将以下行添加到package.json文件的scripts部分: “服务器”:“ SERVERPORT = 3002节点./fiboserver” 当我尝试

  • 问题内容: 我正在尝试为Java中的流程构建器设置PATH环境变量,我尝试了以下操作: 但是以下操作无效,流程构建器选择了默认系统路径。 问题答案: 在新过程中使用路径。它不用于查找命令。 您可以尝试下一个解决方案。运行cmd.exe(bash等),然后运行命令。 例:

  • 问题内容: 这是我第一次使用SQLServer 2012,并且我收到的这段代码不起作用: 这段代码有问题: 我有以下三个错误: 问题答案: 您需要替换为,它将起作用 所以这 需要替换为

  • 本文向大家介绍在Windows中设置Python环境变量的实例讲解,包括了在Windows中设置Python环境变量的实例讲解的使用技巧和注意事项,需要的朋友参考一下 在 Windows 设置环境变量 在环境变量中添加Python目录: 在命令提示框中(cmd) : 输入 按下"Enter"。 注意: C:\Python 是Python的安装目录。 也可以通过以下方式设置: • 右键点击"计算机"

  • 我得到了一台装有Windows10的新笔记本电脑,我想对它进行设置,以便从命令行使用和。 我已经在网上搜索了,但所有的指南都是以前的版本,我不想在我不明白的地方乱搞。

  • 本文向大家介绍如何在Windows上设置python环境变量PYTHONPATH?,包括了如何在Windows上设置python环境变量PYTHONPATH?的使用技巧和注意事项,需要的朋友参考一下 要将Windows上的PYTHONPATH设置为指向Python以在其他目录中查找模块和包导入,请转到: 然后在系统变量下编辑PythonPath变量。在当前PYTHONPATH的末尾,添加分号,然后