hadoop-1.1.1 eclipse插件编译

    在ubuntu上进行hadoop相关的开发,需要在eclipse上安装hadoop开发插件。最新释放出的hadoop包含源码的包,以hadoop-1.1.1为例,包含相关的eclipse插件的源码,因此可以针对自己的eclipse版本来编译一个hadoop的eclipse插件,我的eclipse的版本代号为indigo,以此为例,下面详细介绍插件的编译安装过程。

一. 下载hadoop-1.1.1

    我的下载地址为:(http://www.fayea.com/apache-mirror/hadoop/common/stable/hadoop-1.1.1.tar.gz )下载完成后解压到文件目录下


二. 安装ant

    # sudo apt-get install ant。


三. 修改编译配置文件

    在hadoop解压目录下,找到src\contrib\eclipse-plugin\build.xml,修改以下几行:

    

复制代码
<path id="hadoop-core-jar">
    <fileset dir="${hadoop.root}/">
        <include name="hadoop*.jar"/>
    </fileset>
  </path>

  <!-- Override classpath to include Eclipse SDK jars -->
  <path id="classpath">
    <pathelement location="${build.classes}"/>
    <pathelement location="${hadoop.root}/build/classes"/>
    <path refid="eclipse-sdk-jars"/>
    <path refid="hadoop-core-jar"/>
  </path>
......
  <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.xml"/>
    </jar>
  </target>
复制代码

 

    找到src\contrib\build-contrib.xml,添加以下几行:

    

  <property name="version" value="1.1.1"/>
  <property name="ivy.version" value="2.1.0"/>
  <property name="eclipse.home" location="..."/>

    eclipse的路径请换成你主机上的eclipse存放路径。

    找到MANIFEST.MF,编辑classpath:

Bundle-ClassPath: classes/,
lib/hadoop-core.jar,
lib/commons-cli-1.2.jar,
lib/commons-configuration-1.6.jar,
lib/commons-httpclient-3.0.1.jar,
lib/commons-lang-2.4.jar,
lib/jackson-core-asl-1.8.8.jar,
lib/jackson-mapper-asl-1.8.8.jar

    然后,打开命令行,进入目录\src\contrib\eclipse-plugin,输入ant编译,如果一切正常就编译通过了。

    最后可以在{hadoophome}\build\contrib\eclipse-plugin路径下找到编译好的插件。

 

四. 几个注意点

    1. 一定要在网络环境下进行,如果需要设置上网代理,可以在src\contrib\build-contrib.xml中添加如下几行:

复制代码
<target name="proxy" >
      <property name="proxy.host" value=""/>
    <property name="proxy.port" value="80"/>
    <property name="proxy.user" value=""/>
    <property name="proxy.pass" value=""/>
    <setproxy proxyhost="${proxy.host}" proxyport="${proxy.port}"
      proxyuser="${proxy.user}" proxypassword="${proxy.pass}"/>
  </target>
复制代码

    在xml文件中的ivy相关文件的下载任务中,添加以上代理任务的依赖,配置为:

<target name="ivy-download" depends="proxy" description="To download ivy " unless="offline">
    <get src="${ivy_repo_url}" dest="${ivy.jar}" usetimestamp="true"/>
  </target>

    2. 如果出现编译提示类的版本不匹配的问题,请确认你的java版本大于1.6。

最后,如果各位的eclipse版本也是indigo,hadoop版本也是1.1.1,又懒得自己编译了,那么我编译好的插件下载地址如下:

http://download.csdn.net/detail/sxfcct/4978640

  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值