1、下载hadoop-1.0.4.tar.gz包,我解压到了/usr/local/hadoop-1.0.4
Hadoop官方也提供了SVN方式的源代码下载。部署这个也可以,地址为svn地址:http://svn.apache.org/repos/asf/hadoop/common/tags/ release-*.*.*/ 需要安装svn。
2、Eclipse中创建Project, File->new->Project->Java Project,选择项目的位置为Hadoop的根目录hadoop-1.0.4,单击Finish按钮,就完成了Eclipse项目的创建
注意:Project根会出现一个!,是hadoop中的ANT_HOME/lib/ant.jar没有配置,所以我们需要配置系统的ANT_HOME的变量,让Eclipse能够找到编译代码需要的Ant库,选中项目,然后打开Eclipse的Project—>Properties->Java Build Path, 在Libraries页编辑出错的项,ANT_HOME/lib/ant.jar, 创建变量ANT_HOME(在接下来第一个对话框里单击‘Variable’,在第二个对话框里单击"New"按钮),其值为Ant的安装目录。
3、配置ant后发现,如下两个红叉
A:src/core上仍然有红叉 是eclipse无法编译的原因,所以需要
[user@fakeDistnode hadoop-1.0.4]$ ant eclipse
..........
BUILD FAILED
/usr/local/hadoop-1.0.4/build.xml:2391: /usr/local/hadoop-1.0.4/.eclipse.templates does not exist.
办法copy svn中下载的eclipse.templates到hadoop-1.0.4
再次ant eclipse
............
BUILD SUCCESSFUL
Total time: 14 seconds
B 如下错误
办法:import com.sun.tools.javac.code.Attribute.Array;删除即可
4、修改将Java Build Path,删除src,添加src/core, src/hdfs, src/mapred, src/tools几个目录。
至此,源码部署完成如下
如果需要重新生成jar、check后,直接在eclipse中 对build.xml ant build编译就ok了或者直接在命令行中ant build
~/.bashrc文件如下:
# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# User specific aliases and functions
export JAVA_HOME=/usr/java/jdk1.6.0_12
export classpath=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/jre/lib/rt.jar:$CLASSPATH
export PATH=$JAVA_HOME/bin:/opt/jad:$PATH
#export HADOOP_HOME=/usr/local/hadoop-1.0.4
#export HIVE_HOME=$HADOOP_HOME/hive-0.9.0
#export HIVE_CONF_DIR=$HIVE_HOME/conf
#export PATH=$HADOOP_HOME/bin:$HIVE_HOME/bin:$HIVE_CONF_DIR:$PATH
export ANT_HOME=/usr/local/apache-ant-1.8.4
export MAVEN_HOME=/usr/local/apache-maven-3.0.5
export PATH=$PATH:$ANT_HOME/bin:$MAVEN_HOME/bin
#export MAHOUT_HOME=/usr/local/trunk
#export MAHOUT_CONF_DIR=$HAHOUT_HOME/conf
#export PATH=$PATH:$$MAHOUT_HOME/bin