当前位置:编程学习 > 网站相关 >>

Windows 编译 hadoop eclipse plugin 1.0.4

Windows编译Hadoop-eclipse-plugin-1.0.4.jar
1.     下载apache ant压缩包,解压到D盘
2.     配置ant环境变量
ANT_HOME = D:\apache-ant-1.8.4
在path环境变量后追加 %ANT_HOME%\bin
3.     下载hadoop-1.0.4.tar.gz,解压到D盘
4.  修改%HADOOP_HOME%\src\contrib\下的build-contrib.xml文件:
在<projectname="hadoopbuildcontrib"xmlns:ivy="antlib:org.apache.ivy.ant">下添加
<property name="eclipse.home" location="Eclipse的安装路径>
<property name="version" value="1.0.4"/>
5.  修改%HADOOP_HOME%\src\contrib\eclipse-plugin下的build.xml文件:
在<pathid="eclipse-sdk-jars">下添加
<fileset dir=" ../../../"><include name="hadoop*.jar"/></fileset>
6.         把commons-cli-1.2.jar与拷到%HADOOP_HOME%\build\ivy\lib\Hadoop\common\下,将hadoop-core-1.0.4.jar拷到%HADOOP_HOME%\build下
7.         在%HADOOP_HOME%\src\contrib\eclipse-plugin目录下shift+鼠标右键,选择在此处打开命令窗口,输入ant jar,执行命令
8.         等待命令行提示BUILDSUCCESSFUL,编译成功后会在%HADOOP_HOME%\build\contrib\eclipse-plugin目录下生成hadoop-eclipse-plugin-1.0.4.jar文件。(注意:这个文件目前还不能用,如果放到eclipse的plugins目录下会有异常发生,当打开Map/Reduce Location视图添加hadoop location的时候会报这个异常:Map/Reducelocation status updater".org/codehaus/jackson/map/JsonMappingException)下面的步骤就是解决这个异常
9.         将%HADOOP_HOME%\lib目录下的如下jar文件添加到hadoop-eclipse-plugin-1.0.4.jar的lib目录下(可用压缩工具打开)jackson-core-asl-1.8.8.jar, jackson-mapper-asl-1.8.8.jar, commons-configuration-1.6.jar, commons-lang-2.4.jar,commons-httpclient-3.0.1.jar
10.      将hadoop-eclipse-plugin-1.0.4.jar文件中的META-INF/MANIFEST.MF解压出来,修改这个文件的Bundle-ClassPath: classes/,lib/hadoop-core.jar 为
Bundle-ClassPath:classes/,lib/hadoop-core.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, lib/commons-httpclient-3.0.1.jar
11.      然后将修改后的MANIFEST.MF替换hadoop-eclipse-plugin-1.0.4.jar中的META-INF/MANIFEST.MF文件
12.      修改完毕后的hadoop-eclipse-plugin-1.0.4.jar即为最终可以使用的文件。将这个文件放到eclipse的plugins目录下,重启eclipse,配置你的Map/ReduceLocation,就可以用eclipse访问hadoop和新建Map/Reduce Project了
补充:综合编程 , 其他综合 ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,