Hadoop-Mkdirs无法创建C:\Users\acer\AppData\Local\Temp\Hadoop-unjar778 77072697774970262\META-INF\license

Hadoop-Mkdirs无法创建C:\Users\acer\AppData\Local\Temp\Hadoop-unjar778 77072697774970262\META-INF\license,hadoop,mapreduce,Hadoop,Mapreduce,我以伪分布式模式在Windows计算机上安装了Hadoop,并尝试在其上运行MapReduce作业。Namenode和Datanode运行时没有出现任何问题,但是MapReduce作业始终失败,出现以下错误: Exception in thread "main" java.io.IOException: Mkdirs failed to create C:\Users\acer\AppData\Local\Temp\hadoop-unjar778 7707269774970262\META-IN

我以伪分布式模式在Windows计算机上安装了Hadoop,并尝试在其上运行MapReduce作业。Namenode和Datanode运行时没有出现任何问题,但是MapReduce作业始终失败,出现以下错误:

Exception in thread "main" java.io.IOException: Mkdirs failed to create C:\Users\acer\AppData\Local\Temp\hadoop-unjar778
7707269774970262\META-INF\license
        at org.apache.hadoop.util.RunJar.ensureDirectory(RunJar.java:128)
        at org.apache.hadoop.util.RunJar.unJar(RunJar.java:104)
        at org.apache.hadoop.util.RunJar.unJar(RunJar.java:81)
        at org.apache.hadoop.util.RunJar.run(RunJar.java:209)

我已经检查过我已经拥有该文件夹的完全权限,并且我还尝试使用maven shade插件,但没有成功。

不确定问题出在哪里,但还有一些事情要做

  • 使用Temp\hadoop-unjar778的正确用户验证文件夹权限 77072699774970262\META-INF(可以使用chmod-R 777)

  • 执行MR时检查Namenode是否正在运行

  • 节点管理器服务正在运行

  • 检查配置:

  • 对于Hadoop 1.x:

    <property>
        <name>mapred.job.tracker</name>
        <value>localhost:9101</value>
      </property
    
    
    mapred.job.tracker
    本地主机:9101
    
    <property>
        <name>mapreduce.jobtracker.address</name>
        <value>localhost:9101</value>
      </property>