你的位置:首页 > 数据库

[数据库]Hadoop1.2.1插件编译


本文介绍了Hadoop 1.2.1插件的编译步骤及编译后插件的配置。

 

1. 将Haoop 1.2.1源文件hadoop-1.2.1.tar.gz解压到D:\hadoop-1.2.1

 

2. 将项目导入Eclipse

 

 

3. 将build-contrib.

 

 

4. 修改build.

 

1). 指定build-contrib.路径

<import file="./build-contrib./>

 

 

 

2). 添加Hadoop相关包到classpath中

<!-- Override classpath to include Eclipse SDK jars -->

<path id="classpath">

<!--pathelement location="${build.classes}"/-->

<!--pathelement location="${hadoop.root}/build/classes"/-->

    <pathelement location="${hadoop.root}/hadoop-core-1.2.1.jar"/>

    <pathelement location="${hadoop.root}/lib/*"/>

<path refid="eclipse-sdk-jars"/>

</path>

 

3). 拷贝相关包到项目lib目录下,然后打包到jar文件。

<target name="jar" depends="compile" unless="skip.contrib">

<mkdir dir="${build.dir}/lib"/>

<copy file="${hadoop.root}/hadoop-core-${version}.jar" tofile="${build.dir}/lib/hadoop-core.jar" verbose="true"/>

<copy file="${hadoop.root}/lib/commons-cli-1.2.jar" todir="${build.dir}/lib" verbose="true"/>

<copy file="${hadoop.root}/lib/commons-lang-2.4.jar" todir="${build.dir}/lib" verbose="true"/>

<copy file="${hadoop.root}/lib/commons-configuration-1.6.jar" todir="${build.dir}/lib" verbose="true"/>

<copy file="${hadoop.root}/lib/jackson-mapper-asl-1.8.8.jar" todir="${build.dir}/lib" verbose="true"/>

<copy file="${hadoop.root}/lib/jackson-core-asl-1.8.8.jar" todir="${build.dir}/lib" verbose="true"/>

<copy file="${hadoop.root}/lib/commons-httpclient-3.0.1.jar" todir="${build.dir}/lib" verbose="true"/>

<jar

jarfile="${build.dir}/hadoop-${name}-${version}.jar"

manifest="${root}/META-INF/MANIFEST.MF">

<fileset dir="${build.dir}" includes="classes/ lib/"/>

<fileset dir="${root}" includes="resources/ plugin./>

</jar>

</target>

 

5. 修改build-contrib.

 

1). 确认hadoop.root属性值是否正确,如果正确,可以hadoop目录的绝对路径

<property name="hadoop.root" location="${root}/../../../"/>

 

2).添加如下属性

<property name="version" value="1.2.1"/>

<property name="eclipse.home" location="D:/eclipse"/>

 

6). 将导出的jar包复制到eclipse安装目录下的dropins目录中

 

7. 重启eclipse

 

8. 配置HDFDS

 

注意运行eclipse的window用户一定要用Lunix上的Hadoop用户相同,或对Hadoop程序有访问权限。

 

linux有一个grid组可以访问hadoop程序,它包含两个用户(grid和chujq)

 

windown必须使用grid或chujq才可以访问HDFS。