首页 > 编程知识 正文

Windows环境下执行hadoop命令出现系统找不到指定路径Error

时间:2023-05-06 05:20:59 阅读:224190 作者:4154

  问题详情

    比如在win下的cmd下执行如下命令,会出现

  首先打了下java -version,对的呀。

C:Userslenovo>java -versionjava version "1.8.0_66"Java(TM) SE Runtime Environment (build 1.8.0_66-b18)Java HotSpot(TM) 64-Bit Server VM (build 25.66-b18, mixed mode)

C:Userslenovo>

 

  查看HADOOP_HOME的系统环境变量,也是对的啊,那是为什么呢?且听我如下慢慢道来。

  问题分析

出现这样的情况,是你的jdk是安装在C盘下,如果是非C盘,是一般不会出现这样的情况的。

    解决办法(如果你的jdk是安装在C盘)

    这个的分情况,如果你的jdk是安装在C盘,比如保持默认

 

  

找到

  方法1、用路径替代符

  C:PROGRA~1Javajdk1.8.0_66

  因为PROGRA~1是 C:Program Files 目录的dos文件名模式下的缩写 。
  长于8个字符的文件名和文件夹名,都被简化成前面6个有效字符,后面~1,有重名的就 ~2,~3,

set JAVA_HOME=C:PROGRA~1Javajdk1.8.0_66

 

C:Userslenovo>hadoop versionHadoop 2.6.0Subversion https://git-wip-us.apache.org/repos/asf/hadoop.git -r e3496499ecb8d220fba99dc5ed4c99c8f9e33bb1Compiled by jenkins on 2014-11-13T21:10ZCompiled with protoc 2.5.0From source with checksum 18e43357c8f927c0695f1e9522859d6aThis command was run using /D:/SoftWare/hadoop-2.6.0/share/hadoop/common/hadoop-common-2.6.0.jar

C:Userslenovo>

  方法2、用引号括起来

 set JAVA_HOME="C:Program Files"Javajdk1.8.0_66

C:Userslenovo>hadoop version'C:Program' 不是内部或外部命令,也不是可运行的程序或批处理文件。Hadoop 2.6.0Subversion https://git-wip-us.apache.org/repos/asf/hadoop.git -r e3496499ecb8d220fba99dc5ed4c99c8f9e33bb1Compiled by jenkins on 2014-11-13T21:10ZCompiled with protoc 2.5.0From source with checksum 18e43357c8f927c0695f1e9522859d6aThis command was run using /D:/SoftWare/hadoop-2.6.0/share/hadoop/common/hadoop-common-2.6.0.jar

C:Userslenovo>

    解决办法(如果你的jdk是安装在非C盘)

      则,压根不需修改hadoop-env.cmd。

    比如如下你的安装在E:softwarejdk1.8

 但是,如果你的jdk是比如安装在D盘下的Program Files,是D:Program Files"Javajdk1.7.0_03,但是,为什么还是不可以呢?

set JAVA_HOME="D:Program Files"Javajdk1.7.0_03

 

只能说,也许目前是个debug吧。   建议将jdk默认安装在c盘符。

   非C盘就是不能加引号,

  成功了!

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。