出现的报错如下图:

解决方法有多种,我从网上也查了不少,问了一些小伙伴的解决方案,尝试过修改源码,但没有效果,以下将我遇到的问题的解决方案为各位提供一下,仅供参考。
1.首先检查本地hadoop,与java环境是否正常,环境未配置也会导致出此报错
用cmd窗口检查

出现以上效果的环境变量配置正确,否则去配环境变量去。配置环境变量的方法
配置HOME:

配置PASS,如果配置完java变量测试后没有效果,可以将Java的PASS放置在PASS变量的顶端

配置完hadoop的环境变量需要加载一下,在cmd窗口中输入winutils加载一下
2.再次运行程序,如果还不可以正常 运行,检查本地hadoop解压文件是否存在丢失重要文件,检查hadoop/bin下这俩文件是否缺失,如果缺失需要下载后再运行程序

3.上述方法无效后,将/Hadoop/bin/下的hadoop.dll文件复制到C:\Windows\System32下,再次运行,一般情况可以解决

再次运行程序,如果无效,修改源码吧
4.修改源码:
找到源文件的位置,将鼠标放置再报错的源文件上就可得到,报错源文件是NativeIO,java,此问题的报错文件在.m2\repository\org\apache\hadoop\hadoop-common\2.7.2下
![]()
此文件是压缩文件,修改时可以解压文件,进入修改,修改的文件位置在\org\apache\hadoop\io\nativeio文件下的

将文件修改为

修改后删除原来的压缩包,运行程序,会出现提示有多个文件或者文件缺失,选择“修改文件路径”,将文件重新加载后再运行程序。我通过这个方法没有解决,继续百度查到了另一个方法
5.添加源码
上方法仍然失效时需要在此项目中重新创建一个包,将NativeIO.java重新写一下,在此项目中添加一个包,包名如下

包名必须是这个,需要自己创建,在此包下创建类NativeIO.java,里面的代码复制源码中的NativeIO.java,将文件里内容修改为

再次运行Java程序,应该就可以正常运行了。
本文详细介绍了在Hadoop环境下遇到的Java环境配置问题及解决步骤,包括检查环境变量、补全缺失文件、修改源码等方法,适用于配置出现问题的开发者。
1505

被折叠的 条评论
为什么被折叠?



