windows + hadoop + eclipse 过程记录
昨天在本机上搭建了伪分布式的hadoop,今天决定在eclipse中搭建hadoop的环境,毕竟磨刀不误砍柴工

安装的hadoop是2.7.5版本,要想使用eclipse写MapReduce需要一个 hadoop-eclipse-plugin-2.7.5.jar
在网上找了一波发现并没有可以下载下来直接使用的包,于是就到 https://github.com/winghc/hadoop2x-eclipse-plugin 下载源码,自己来编译
在编译此包前还需要 ant 可以在 http://ant.apache.org/ 下载
下载好两个文件后解压

ant:配置环境变量

Path中添加路径

然后就是浩大的改文件工程
hadoop2x-eclipse-plugin-master\src\contrib\eclipse-plugin\build.xml



hadoop2x-eclipse-plugin-master\src\ivy\libraries.properties



hadoop2x-eclipse-plugin-master\ivy\libraries.properties
修改上述内容并修改

上面需要修改的内容可以到 hadoop-2.7.5\share\hadoop\common\lib 中查看

接下来进行编译,将在DOS中将文件夹切换到 hadoop2x-eclipse-plugin-master\src\contrib\eclipse-plugin
执行
ant jar -Dversion=2.7.5 -Declipse.home=C:\Users\lichaoxing\eclipse\java-oxygen\eclipse -Dhadoop.home=D:\hadoop-2.7.5
注: C:\Users\lichaoxing\eclipse\java-oxygen\eclipse 是eclipse的路径,D:\hadoop-2.7.5 是hadoop的路径
然后回车后发现报了N多错误
其中一部分截图

问题在于指定的eclipse路径下的找不到这些包,原因是我在安装eclipse的时候下载的是.exe文件,在 eclipse\java-oxygen\eclipse\plugins 下没有这些包

于是我果断去下载了源码文件,果然在 eclipse\plugins 含有好多包

我将里面的包全部复制到 eclipse\java-oxygen\eclipse\plugins 中,再此编译,成功了


后来我发现原来安装的eclipse文件夹下其实是有那些依赖包的,只不过不在上述文件夹下,而是在 eclipse\java-oxygen\eclipse\dropins\plugins 中
如果更改下build.xml文件的内容,使路径为这个应该也可以解决问题,这里由于急于搭建好开发环境没有进行实验

由于强迫症,我把之前的eclipse删掉了,使用了新下载的源码包(eclipse4.8)

将 hadoop-eclipse-plugin-2.7.5.jar 拷贝到 eclipse 的 plugins 文件夹下
启动eclipse,终于见到了久违的 Hadoop 了,配置一下Hadoop的安装路径

在面板的下面 Map/Reduce Locations 中右键新建一个连接


点击右下角finish后成功创建连接,但是点击连接名前面的尖号就会报 空指针异常

找了大量资料,没能解决此问题,在一个博客里看到如果配置正确,可以忽略此问题 (https://blog.csdn.net/psp0001060/article/details/54728436)
于是尝试测试一下,准备好用于wordcount的file1,里面写了一点内容,上传到hdfs的input文件夹内,并指定输出在output/wordcount/

在代码区右键run as 选择hadoop

运行后报log4j的相关错误

解决办法:
- 在mian中添加一行代码
BasicConfigurator.configure();
再次运行,成功执行

- 工程文件夹下新建一个Source Folder,命名为source

右键source新建,Other,选择General下的File并命名为 log4j.properties


在文件中添加
log4j.rootLogger=INFO, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n
log4j.appender.logfile=org.apache.log4j.FileAppender
log4j.appender.logfile.File=target/spring.log
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n
运行代码,成功解决问题
windows + hadoop + eclipse 过程记录的更多相关文章
- hadoop 安装过程记录
1)首先配置好了四个linux虚拟机 root pwd:z****l*3 关闭了防火墙 开通了 sshd服务 开通了 ftp服务 配置了 jdk 1.8 配置好了互信 (之前配置的过程忘了!--检查了 ...
- windows下eclipse远程连接hadoop集群开发mapreduce
转载请注明出处,谢谢 2017-10-22 17:14:09 之前都是用python开发maprduce程序的,今天试了在windows下通过eclipse java开发,在开发前先搭建开发环境.在 ...
- 升级Windows 10 正式版过程记录与经验
升级Windows 10 正式版过程记录与经验 [多图预警]共50张,约4.6MB 系统概要: 预装Windows 8.1中文版 64位 C盘Users 文件夹已经挪动到D盘,并在原处建立了符号链接. ...
- windows中eclipse调试hadoop
下载eclipse:https://www.eclipse.org/downloads/eclipse-packages 下载hadoop eclipse插件:https://github.com/w ...
- 【转】android 最新 NDK r8 在window下开发环境搭建 安装配置与使用 详细图文讲解,完整实际配置过程记录(原创)
原文网址:http://www.cnblogs.com/zdz8207/archive/2012/11/27/android-ndk-install.html android 最新 NDK r8 在w ...
- Ubuntu14.04 Tomcat 安装过程记录
Ubuntu14.04 Tomcat 安装过程记录 检查java的版本 zhousp@ubuntu:~$ sudo java -version [sudo] password for zhousp: ...
- MapReduce编程模型详解(基于Windows平台Eclipse)
本文基于Windows平台Eclipse,以使用MapReduce编程模型统计文本文件中相同单词的个数来详述了整个编程流程及需要注意的地方.不当之处还请留言指出. 前期准备 hadoop集群的搭建 编 ...
- hadoop安装过程中出现的错误
此次来记录一下我在安装Hadoop安装过程中出现的错误,安装过程参照慕课网林子雨教程进行安装,在尝试过程中出现的错误如下: 1.在安装Ubuntu时,新建虚拟电脑时,并没有在版本的输入框中有Ubunt ...
- 菜鸟如何使用hanlp做分词的过程记录
菜鸟如何使用hanlp做分词的过程记录 最近在学习hanlp的内容,准备在节后看看有没有时间整理一波hanlp分享下,应该还是会像之前分享DKHadoop一样的方式吧.把整个学习的过程中截图在配文字的 ...
随机推荐
- HGOI20180812 (NOIP2018 提高组 Day1 模拟试题)
前缀数组其实就是有序的,那么答案显然是 我们尝试求出通项公式: 证明如下: 因为 所以: 解之得: 更加通俗的写法如下: 易知 令 那么, (错位相减) 由易知等式代入得, 所以, 所以程 ...
- 样本服从正态分布,证明样本容量n乘样本方差与总体方差之比服从卡方分布x^2(n)
样本服从正态分布,证明样本容量n乘样本方差与总体方差之比服从卡方分布x^2(n) 正态分布的n阶中心矩参见: http://www.doc88.com/p-334742692198.html
- Qt ------ WAV 音频文件播放
1.用 QFile 打开 WAV 文件,读出文件头信息,看看是否符合音频播放设备的要求 QAudioDeviceInfo m_audioOutputDevice;//可以获取音频输出设备的信息,比如哪 ...
- Zabbix应用八:Zabbix监控MongoDB
利用Zabbix监控MongoDB 一.首先介绍mongodb采集到的数据含义: 1.状态采集命令: >db.serverStatus(); 2.输出内容: { "host" ...
- Nested Loops(嵌套循环)
先扫描驱动表的(外表),外表的每一行驱动内表,然后匹配,所以nest loops不是主要依赖于内表有多少行,而是非常依赖于驱动表到底有多少行参与nested loops,因为驱动表(或者准确的说是驱动 ...
- log4j常见配置
依赖jar <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId ...
- Spark记录-Scala模式匹配
Scala模式匹配 模式匹配是Scala函数值和闭包后第二大应用功能.Scala为模式匹配提供了极大的支持,处理消息. 模式匹配包括一系列备选项,每个替代项以关键字大小写为单位.每个替代方案包括一个模 ...
- keepalived 配置文件参数详解
global_defs 全局配置vrrpd 1. vrrp_script添加一个周期性执行的脚本.脚本的退出状态码会被调用它的所有的VRRP Instance记录. 2. vrrp_sync_grou ...
- 卸载并安装指定版本Angular CLI
1.卸载之前的版本 npm uninstall -g @angular/cli 2.清除缓存,确保卸载干净 npm cache clean 3.检查是否卸载干净 输入命令 ng -v 若显示comma ...
- 2018年9月28日CCPC秦皇岛站参赛总结
day1: 被中间结果超出int范围给叉了,立刻意识到了自己的弱小以及校赛出题的时候是怎么叉别人的 day2: 签到签了40分钟,谨慎一些还是很好的,机子重启耽误了一些时间 一道暴力+LCS的简单题被 ...