如何解决Eclipse中运行Hadoop WordCount程序时的InputBootStrapper错误?
嘿,我之前在跑Hadoop WordCount示例时也碰到过这个InputBootStrapper错误,结合你的环境配置和描述,大概率是下面几个原因之一,你可以挨个排查试试:
Hadoop类路径配置不完整
虽然你已经添加了外部JAR,但可能Eclipse的运行配置里没把Hadoop核心依赖全包含进去。InputBootStrapper属于Hadoop common模块,你可以检查运行配置的Classpath,确保hadoop-common-2.9.0.jar、hadoop-mapreduce-client-core-2.9.0.jar这些核心包都在列表里。另外,Ubuntu终端里的HADOOP_CLASSPATH环境变量也得确认:echo $HADOOP_CLASSPATH如果输出为空或者缺少核心JAR路径,就在
~/.bashrc里添加:export HADOOP_CLASSPATH=$(hadoop classpath)执行
source ~/.bashrc后重启Eclipse再试。输入路径的权限或类型错误
确认HDFS上的输入路径存在且当前用户有读取权限:hdfs dfs -ls /你的输入路径要是权限不足,用
hdfs dfs -chmod 755 /你的输入路径修改。另外注意,输入路径必须是HDFS路径(比如hdfs://localhost:9000/user/xxx/input),不能直接写本地路径,Hadoop默认会优先读取HDFS资源。Eclipse Hadoop插件配置问题
Oxygen版本的Eclipse搭配Hadoop2.9.0可能存在兼容性细节:- 检查Window -> Preferences -> Hadoop Map/Reduce里的Hadoop安装路径,确保指向Ubuntu上的Hadoop目录(比如
/usr/local/hadoop),路径不能有空格; - 把Hadoop安装目录下的
core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml复制到Eclipse项目的src/main/resources目录,这些配置文件是程序连接集群的关键。
- 检查Window -> Preferences -> Hadoop Map/Reduce里的Hadoop安装路径,确保指向Ubuntu上的Hadoop目录(比如
Java运行环境一致性问题
确认Eclipse的编译和运行环境都是Java1.8:- 右键项目 -> Properties -> Java Build Path -> Libraries,确保JRE System Library是1.8版本;
- 打开Run Configurations -> JRE选项卡,选择的JRE也是Java8。有时候Eclipse会默认用其他版本JRE,导致兼容性报错。
集群服务的隐藏异常
虽然你说管理器正常运行,但用jps命令确认下核心进程状态:jps确保
NameNode、DataNode、ResourceManager、NodeManager都在运行。如果DataNode未启动,即使输入路径存在也无法读取数据,会触发InputBootStrapper错误。
附你提供的代码片段:
package mapreduce;
import java.io.IOException;
import java.util.StringTokenizer;
import org.apache.hadoop.conf.Confi...
内容的提问来源于stack exchange,提问作者Asif Ishtiaq

