新的一年,新的发展,新的学习。
apache是一个强大的开源组织,今年开始学习学习人家的思维,人家的代码 。从apche的官网上看有上百种针对不同服务的项目,我打算从比较火的hadoop入手。
首先是‘环境的搭建’,hadoop工程是在linux系统上开发的,所以我们首先装个ubuntu12的系统。(windows系统下,maven构建编译hadoop源码的时候会报.sh等linux执行文件的错误,由于我们的目的是学习Hadoop,所以暂且没必要在这方面耽搁时间。)
我的电脑是win7旗舰版64位,虚拟机VMWare Workstation(http://www.xp85.com/html/VMwareWorkstation.html),
ubuntu (ubuntu-12.10-desktop-i386.iso),百度就能搜到,我下载的753M.
这个虚拟机用起来很方便,比oracle的那个好用。安装ubuntu的过程也很顺利。
系统安装好了,接下来就是开发工具的安装:
1: JDK.安装,方法网上多的去了,我也是不写了,主要是环境变量配置好。
2:eclipse.去官网下载一个版本,直接解压到自定义目录下(比如/usr/lib)。
然后$ sudo gedit /usr/share/applications/eclipse.desktop 配置它的显示图标
内容如下:
[Desktop Entry]
Type=Application
Name=Eclipse
Comment=Eclipse Integrated Development Environment
Icon=/usr/lib/eclipse/icon.xpm
Exec=/usr/lib/eclipse/eclipse
Terminal=false(true的时候,启动eclipse的时候附带一个terminal启动)
Categories=Development;IDE;Java;
3:maven.我安装的version3.1.1,去官网下载。
配置环境变量,sudo gedit /etc/profile .在最后添加如下
export M2_HOME=/home/解压路径/apache-maven-3.1.1
export M2=$M2_HOME/bin
export PATH=$M2:$PATH
保存
执行命令:source profile是配置文件生效。mvn -version即可看到maven版本信息
4:hadoop源码下载,解压到自己制定目录,解压后有个BUILD.txt文件,里边有个安装手顺。
要想正常执行,需要几个前提条件---->
a: sudo chown -R 系统用户 hadoop解压目录(保证maven命令执行的时候有权限找到target目录里的文件)
b:操作系统包含编译库,就是要有执行底层代码的软件hadoop源码maven命令操作的时候会产生一系列文件,需要相应的编译软件去执行。我的ubuntu系统就没有,于 是我通过apt下载'sudo apt-get install g++',另外我的protoclib 版本为2.4.1,Hadoop要求至少2.5版本,自己下载一个压缩包搞定。
c: maven编译hadoop源码(参考BUILD.txt)。eclipse本身也有集成maven工程的功能,但是对于大一点的工程运行编译起来太慢,所以还是乖乖的用maven编译,生产 eclipse工程,再导入到eclipse工具里吧。
最后,在把工程导入eclipse后。会有几个错误,据调查,每个人的错误不太一样,我的就是hadoop-common里的几个类文件缺少。看看少什么,然后去 http://grepcode.com/ 下载需要的类,copy到自己工程里就ok了。
至此,环境搭建完毕。