前言
在自己的win电脑想连机房的hadoop开发,发现idea已经有个官方的插件可以连hadoop和hdfs之类的了,打算试试,但输入端口和用户名后连接失败报如下错误❗HADOOP_HOME is not defined:

网上找了一波解决方法后看到了这样一篇博客,于是顺便把整个解决的过程记录下来(官方文档也有解决方法)
问题产生的原因
hadoop需要windows的本地库才能运行,官方文档说主要是HADOOP.DLL和WINUTILS.EXE这两个文件,如果没有的话,hadoop或者基于hadoop的程序都无法运行。
解决办法
官方文档给了两种解决的方案:
- 安装完全版本的windows的hadoop
- 下载文件并放入目录
- 下载
WINUTILS.EXE放入目录,同时指定HADOOP_HOME的变量指向包含WINUTILS.EXE的bin目录 - 运行Java进程,将系统属性hadoop.home.dir设置为主目录。
问题解决
我选用了2.1的方法:
- 先将hadoop的
bin目录及其内部的文件复制到win的电脑 - 然后从仓库下载对应hadoop版本的
bin目录,直接复制过去覆盖掉
官方给的仓库已经很久没更新了,一些新版本的bin目录可能没有,可以用上面贴的路径
- 系统变量指定
HADOOP_HOME的路径为xxx/xxx/hadoopx.x.x(见下图) - ❗系统变量指定
HADOOP_USER_NAME的用户名为linux端的用户名(见下图)
- 系统PATH加上
%HADOOP_HOME%\bin(见下图) - 在IDEA中测试连接,连接成功
系统变量
Path环境变量
idea连接成功
别的组件的连接
可以参考最开始贴的博客,在此不再赘述
浙公网安备 33010602011771号