招贤纳士:
我们叫数澜
我们核心技术团队来自阿里、华为、金蝶、移动、GE等
我们获得来自阿里巴巴集团联合创始人、湖畔山南总裁谢世煌、IDG合伙人牛奎光、洪泰等投资
我们的官网:https://www.dtwave.com
我们提供:期权、五险一金、试用期全薪、商业保险、免费体检、入职即享年休、每周团建、生日party、生日礼物、节日礼品、技术分享、技术专题小组等。
我们的地盘在杭州余杭区仓前梦想小镇和北京望京soho
我们是一个技术氛围浓厚,高执行力,充满激情的团队,期待你的加入,共同成长!如有兴趣,烦请投递简历,我们将快速处理:
数据开发工程师、Node.js、算法工程师、测试开发工程师、架构师,请投递简历至qin.xq@dtwave-inc.com
Java工程师、前端工程师,请投递简历至min.wm@dtwave-inc.com
运维工程师、项目经理,请投递简历至yurong.lyr@dtwave-inc.com
HamaWhite(QQ:530422429)原创作品,转载请注明出处:http://write.blog.youkuaiyun.com/postedit/40615469。
系统:Ubuntu14.04
Hadoop版本: hadoop-2.5.0(点击下载)
Java版本:openjdk-1.7.0_55
Eclipse版本: Release 4.4.0 (点击下载)
2. 把下载Hadoop源码包 hadoop-2.5.0-src.tar.gz 解压到工作目录(本文为/home/baisong),
得到 hadoop-2.5.0-src 文件夹。
3. 安装Maven,命令如下:
$ sudo apt-get install maven
4. 安装Google开源的序列化框架 Protocol Buffers。
1) 下载 protobuf-2.5.0.tar.gz(点击下载),然后解压得到 protobuf-2.5.0 文件夹。
2) 进入protobuf-2.5.0,输入下属命令:
$ ./configure
遇到如下错误:
分析:此属于Ubuntu的常见错误,可以把常用的库全部下载,命令如下:
$ sudo apt-get install build-essential
然后再输入 $ ./configure 命令即可。
3) 顺序执行下面三个命令。
$ make
$ make check
$ sudo make install
4) 查看Protocol版本号,检查是否安装成功。
$ protoc --version
遇到如下错误,如下:
分析知是因为系统找不到lib库,修改 /etc/ld.so.conf 文件,添加 /usr/local/lib 。如下:
$ sudo gedit /etc/ld.so.conf
内容: include /etc/ld.so.conf.d/*.conf /usr/local/lib
执行下述命令更新库文件路径,然后就能通过 $ protoc --version 命令查看版本号。
$ sudo ldconfig
5. 编译Hadoop源码生成Jar包,无需编译native code、测试用例和生成文档,在/home/baisong/adoop-2.5.0-src目录下,输入下述命令:
$ mvn package -Pdist -DskipTests -Dtar
编译成功后,输出信息如下:
6. 生成Eclipse工程文件,命令如下:
$ cd hadoop-maven-plugins
$ mvn install
$ cd hadoop-2.5.0-src
$ mvn eclipse:eclipse -DskipTests
成功后的输出信息如下图:
7. 在Eclipse中导入源代码:”File“ >> "Import" >> "Existing Projects into Workspace",选择hadoop-2.5.0-src,然后确认。
如上图所示,导入后遇到错误,共有59个错误,但总体上分为3类。解决方法如下:
错误1: org.apache.hadoop.ipc.protobuf.× 无法解析
解决方法如下,依次执行下述命令。
$ cd hadoop-2.5.0-src/hadoop-common-project/hadoop-common/src/test/proto //注释:进入该目录
$ protoc --java_out=../java *.proto
最后,刷新Eclipse中的所有工程。至此,只剩下 6 个错误。
错误2:AvroRecord cannot be resolved to a type TestAvroSerialization.java
解决方法如下:
首先,下载 avro-tools-1.7.4.jar(点击下载)。存放于 hadoop-2.5.0-src 目录中。
然后执行下述命令:
$ cd hadoop-2.5.0-src/hadoop-common-project/hadoop-common/src/test/avro
$ java -jar ~/hadoop-2.5.0-src/avro-tools-1.7.4.jar compile schema avroRecord.avsc ../java
最后,刷新Eclipse工程。只剩下 3个错误。
错误3: Project 'hadoop-streaming' is missing required source ... Build Path Problem
解决方法如下:
右键 hadoop-streaming 项目->properties->左边Java Build Path->Source->选定错误项->右边Remove,如下图所示。
至此,在Eclipse中创建Hadoop工程完成。