#现在网上有关这方面的帖子太多了,我在整资料的时候,看花了眼。为了以后再有这样的问题,所以写了这一篇文章。
#编译环境:Windows 8 专业 64bit ; Hadoop版本:1.0.4 ; Eclipse SDK版本:4.2.1
#此贴有些内容来自网上其他博主的帖子
废话少说,进入正题:
第一步:安装JDK,至于安装什么版本,自行决定。安装完成后设置环境变量。如下图:
第二步:安装打包工具Ant,至于版本么,我感觉现在最新的稳定版就好。和JDK一样,安装完成后设置环境变量:如下图:
有关ant的资料,请访问一下链接了解:
1.http://ant.apache.org/
2.http://zh.wikipedia.org/wiki/Apache_Ant#.E6.AD.B7.E5.8F.B2
3.http://baike.baidu.com/view/42824.htm#3
第三步:修改相关的Build.xml文件
1.修改build-contrib.xml:此文件位于Hadoop目录\src\contrib
添加两个property子节点,分别为Eclipse路径和Hadoop版本(如下图)
2.修改build.xml文件:位于Hadoop目录\src\contrib\eclipse-plugin
1.添加fileset节点,添加对Hadoop根目录下jar包的引用;
2.删除javac节点中属性deprecation;
第四步:新建目录及准备jar包
1.Hadoop目录下,新建 \build\ivy\lib\Hadoop\common\ 并 将\lib\commons-cli-1.2.jar 复制到此目录下
2.根目录下的hadoop-core-1.0.4.jar复制到common目录下
第五步:开始编译
切换到 Hadoop目录 \src\contrib\eclipse-plugin 下 : 命令行 ant jar 开始编译
--------------------------------------------------------------------------------------------------
编译完成后:所得到 hadoop-eclipse-plugin-1.0.4.jar
如果直接使用eclipse连接DFS,会出现一下错误:
An internal error occurred during: "Connecting toDFSHadoop".org/apache/commons/configuration/Configuration
解决方法(直接用解压软件等打开hadoop-eclipse-plugin-1.0.3.jar):
1.将Hadoop下lib目录的commons-configuration-1.6.jar ,commons-httpclient-3.0.1.jar , commons-lang-2.4.jar ,jackson-core-asl-1.8.8.jar 和jackson-mapper-asl-1.8.8.jar复制到hadoop-eclipse-plugin-1.0.3.jar的lib目录下
2.修改该包META-INF目录下的MANIFEST.MF,将classpath修改为:
Bundle-ClassPath:classes/,lib/hadoop-core.jar,lib/commons-cli-1.2.jar,lib/commons-httpclient-3.0.1.jar,lib/jackson-core-asl-1.8.8.jar,lib/jackson-mapper-asl-1.8.8.jar,lib/commons-configuration-1.6.jar,lib/commons-lang-2.4.jar