Windows 10:
java -version
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)
>hdfs namenode -format
Error: Could not find or load main class Abdul
Environment variable :
HADOOP_HOME
C:\hadoop-2.8.0\bin
JAVA_HOME
C:\Java\jdk1.8.0_181
path
C:\hadoop-2.8.0\bin
C:\Java\jdk1.8.0_181\bin
C:\hadoop-2.8.0\sbin
hadoop-env.cmd
set JAVA_HOME=C:\Java\jdk1.8.0_181
答案 0 :(得分:0)
Abdul是Windows用户名。
我再次发布了消息
C:\ Users \ Md。 Abdul Latif> hdfs namenode -format 错误:找不到或加载主类Abdul
答案 1 :(得分:0)
根据“选择目标操作系统版本”部分的Apache Hadoop documentation,不支持Windows 10:
Hadoop开发人员已使用Windows Server 2008和Windows Server 在开发和测试过程中使用的是2008 R2。 Windows Vista和Windows 7 由于Win32 API与 各自的服务器SKU。我们尚未在Windows XP或其他操作系统上进行测试 Windows的早期版本,并且这些版本不太可能。
建议您使用Windows支持的版本。
答案 2 :(得分:0)
我遇到了与在系统变量路径中配置 JAVA_HOME和HADOOP_HOME 相同的问题。 基本上,问题是 hadoop-env 文件,该文件会在其中选择您的用户名,因为Admin为您的系统配置您的名称并带有引起问题的空格。 对我来说,当我更改hadoop-env.cmd文件时,它可以工作。
您会在 cd%HADOOP_HOME%/ etc / hadoop / 光盘中找到 hadoop-env.cmd 。在文件末尾编辑此文件,您将得到 HADOOP_IDENT_STRING =%USERNAME%。 只需按照以下内容而不是 myuser 进行更改,只需输入您的姓名不带空格(),然后保存并启动新的cmd即可。
@rem set HADOOP_IDENT_STRING =%USERNAME%
设置HADOOP_IDENT_STRING = myuser