不多说,直接上干货!
导读
win下安装hadoop 大家,别小看win下的安装大数据组件和使用
玩过dubbo和disconf的朋友们,都知道,在win下安装zookeeper是经常的事
Disconf 学习系列之全网最详细的最新稳定Disconf 搭建部署(基于CentOS 6.X / 7.X)(图文详解)
Disconf 学习系列之全网最详细的最新稳定Disconf 搭建部署(基于Windows7 / 8 / 10)(图文详解)
Disconf 学习系列之全网最详细的最新稳定Disconf 搭建部署(基于Ubuntu14.04 / 16.04)(图文详解)
Windows里如何正确安装Zookeeper以服务运行(博主推荐)(图文详解)
问题详情
比如在win下的cmd下执行如下命令,会出现
有人会很好奇,说
首先打了下java -version,对的呀。
C:\Users\lenovo>java -version
java 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:\Users\lenovo>
查看HADOOP_HOME的系统环境变量,也是对的啊,那是为什么呢?且听我如下慢慢道来。
问题分析
出现这样的情况,是你的jdk是安装在C盘下,如果是非C盘,是一般不会出现这样的情况的。
解决办法(如果你的jdk是安装在C盘)
这个的分情况,如果你的jdk是安装在C盘,比如保持默认
则
找到
方法1、用路径替代符
C:\PROGRA~1\Java\jdk1.8.0_66
因为PROGRA~1是 C:\Program Files 目录的dos文件名模式下的缩写 。 长于8个字符的文件名和文件夹名,都被简化成前面6个有效字符,后面~1,有重名的就 ~2,~3,
set JAVA_HOME=C:\PROGRA~1\Java\jdk1.8.0_66
C:\Users\lenovo>hadoop version
Hadoop 2.6.0
Subversion https://git-wip-us.apache.org/repos/asf/hadoop.git -r e3496499ecb8d220fba99dc5ed4c99c8f9e33bb1
Compiled by jenkins on 2014-11-13T21:10Z
Compiled with protoc 2.5.0
From source with checksum 18e43357c8f927c0695f1e9522859d6a
This command was run using /D:/SoftWare/hadoop-2.6.0/share/hadoop/common/hadoop-common-2.6.0.jar
C:\Users\lenovo>
方法2、用引号括起来
set JAVA_HOME="C:\Program Files"\Java\jdk1.8.0_66
C:\Users\lenovo>hadoop version
'C:\Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
Hadoop 2.6.0
Subversion https://git-wip-us.apache.org/repos/asf/hadoop.git -r e3496499ecb8d220fba99dc5ed4c99c8f9e33bb1
Compiled by jenkins on 2014-11-13T21:10Z
Compiled with protoc 2.5.0
From source with checksum 18e43357c8f927c0695f1e9522859d6a
This command was run using /D:/SoftWare/hadoop-2.6.0/share/hadoop/common/hadoop-common-2.6.0.jar
C:\Users\lenovo>
解决办法(如果你的jdk是安装在非C盘)
则,压根不需修改hadoop-env.cmd。
比如如下你的安装在E:\software\jdk1.8
是D:\Program Files"\Java\jdk1.7.0_03,但是,为什么还是不可以呢?
set JAVA_HOME="D:\Program Files"\Java\jdk1.7.0_03
只能说,也许目前是个debug吧。 建议将jdk默认安装在c盘符。
只能这样来
非C盘就是不能加引号,
成功了!