一、软件安装
1、JDK1.8
链接:https://pan.baidu.com/s/1jqqWb-3JNMDW3DbvibYlJQ?pwd=agoi
提取码:agoi
2、hadoop-3.1.3版本
链接:https://pan.baidu.com/s/1cRkMc7LHPpza7n2oWqyLGw?pwd=ecid
提取码:ecid
3、winutils-master 3.1.1版本下载(windows下运行hadoop必须要下载这个!这个版本可以适用于hadoop3.1.x)
链接:https://pan.baidu.com/s/1K8i7opaqK4Ut76lU4yBcRQ?pwd=a6hh
提取码:a6hh
如果是hadoop其他版本,点击进入官网下载
*配套的winutils-master其他版本,网盘下载:
链接:https://pan.baidu.com/s/1jJthV7h-ynjk4MH6algIzg?pwd=p4aw
提取码:p4aw
*
java环境变量需要先配置,不过本文不做讲解,不会的自行百度。
二、hadoop环境配置
1、先解压下载好的winutils-master,进入bin目录,将winutils.exe和hadoop.dll复制到hadoop-3.1.3\bin下
2、然后将hadoop.dll复制到C:\Windows\System32中 否则 会报 Exception in thread "main"java.lang.UnsatisfiedLinkError:org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/String;I)Z
3、配置hadoop环境变量,新建HADOOP_HOME
4、添加到path路径,%HADOOP_HOME%\bin;
5、打开cmd,输入hadoop version
如果出现上面的情况,则修改hadoop-env.cmd中的
JAVA_HOME=C:\PROGRA~1\Java\jdk1.8.0_111
PS:因为Program Files中存在空格,若是直接使用会出现错误,可以进行如下处理: 只需要用PROGRA~1 代替Program Files,即改为C:\PROGRA~1\Java\jdk1.8.0_111
再次在cmd中输入hadoop version
这样就成功了
为什么要在windows上配置hadoop环境呢?因为想跑一个wordcount案例,如果打成jar包放到yarn上面跑,调试比较费时间。
以上可以解决下面这两个错误:
1、HADOOP_HOME and hadoop.home.dir are unset
2、org.apache.hadoop.io.nativeio.NativeIO$POSIX.stat(Ljava/lang/String;)Lorg/ap
如果还是报错,以下是解决错误的方法:
1.重启idea!是的,我重启后就不报错了
2.D:\hadoop-3.1.3/bin/winutils.exe 和hadoop.dll是不是和你正在使用的hadoop版本匹配
我的问题就是这个原因,我直接把官网上面下载回来的hadoop-3.1.3.tar.gz直接解压,然后随便去网上下载了winutils.exe和hadoop.dll丢进去bin目录(版本是3.0的),一运行就报错了 ,换成相同版本的winutils.exe,再重复以上1、2步骤,复制到bin目录下。
所以一定要和hadoop的版本匹配才行!(用我提供的版本是没有问题的)文章来源:https://www.toymoban.com/news/detail-483583.html
3.如果还没有解决,就多参考其他文章,或者留言文章来源地址https://www.toymoban.com/news/detail-483583.html
到了这里,关于windows搭建hadoop环境(解决HADOOP_HOME and hadoop.home.dir are unset)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!