当前位置: 代码迷 >> Eclipse >> hadoop的eclipse插件编译收拾
  详细解决方案

hadoop的eclipse插件编译收拾

热度:99   发布时间:2016-04-23 00:47:02.0
hadoop的eclipse插件编译整理

1、Hadoop源代码下载、eclipse下载、jdk、Ant下载
2、eclipse导入hadoop工程
3、修改build.xml 与build-contrib.xml 配置文件
4、解决出现的相关错误与异常问题
5、编译、安装、检查

-------------------------------------------------------------------------------------------------------------------------------------------------

下载地址:以下软件都为64位

Eclipse:

http://yunpan.cn/QIIKcHbAjeMxh

Jdk1.7:  

http://yunpan.cn/QIIKcHbAjeMxh

Hadoop-1.0.0:

http://yunpan.cn/QIIKmEG7TVcjR

Ant :

http://yunpan.cn/QIIK3RnbcvvyL


1、在Eclipse中选择File-->Import-->Existing Projects into Workspace导入已有项目,假设路径为:

/download/hadoop-1.0.1/src/contrib/eclipse-plugin,默认的项目名称是MapReduceTools

 

2、默认项目名称为MapReduceTools,然后在项目MapReduceTools中新建lib目录,并把hadoop的hadoop-core、commons-cli-1.2.jar、commons-lang-2.4.jar、commons-configuration-1.6.jar、jackson-mapper-asl-1.0.1.jar、jackson-core-asl-1.0.1.jar、commons-httpclient-3.0.1.jar拷贝到该目录。

 

3、修改build-contrib.xml (将\src\contrib下的build-contrib.xml文件拷贝到MapReduceTools项目根目录底下。

 

  <property name="version" value="1.0.1"/>
  <property name="hadoop.root" location="/download/develop/hadoop-1.0.1"/>
  <property name="eclipse.home" location="/download/eclipse" />

 

4、修改build.xml

     ---

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

     ---

  <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>


5、解决问题:Could not find file \hadoop\hadoop-1.0.0\hadoop-core-${version}.jar to copy

   将

     <target name="compile" depends="init"

    <javac srcdir="${src}" destdir="${dest}" />  

  </target>

   修改为:

      <javac srcdir="${src}" destdir="${dest}" includeantruntime="on" />  


6、解决 错误: 程序包org.apache.hadoop.fs不存在..... 

 <path id="hadoop-jars">
        <fileset dir="${hadoop.root}/">
          <include name="hadoop-*.jar"/>
        </fileset> 
      </path>


在<path id="classpath">中添加:<path refid="hadoop-jars"/>

7、解决:Warning: Could not find file /hadoop/hadoop-1.0.0/build/hadoop-core-1.0.0.jar to copy. (不是必须)

     将build.xml 中的 ${version}替换成具体的版本号,如:1.0.0

8、最后是编译:有三种方法可以进行编译:

    1)eclipse导出式

        右键选择项目-->Export,类型选择JAR file,把plugin.xml文件、classes目录、lib目录和resources目录选上,选择导出的jar目录,即可导出hadoop-eclipse-plugin-1.0.0.jar文件

    2)eclipse 的ant编译式

         MapReduceTools工程下的build.xml 右键-〉Run As->Ant Build

    3)cmd下ant编译时

        cmd下进入到 \src\contrib\eclipse-plugin 下:

       执行: ant -Declipse.home=D:/eclipse  -Dversion=1.0.0


 9、插件安装:

    关闭eclipse,

   将生成后的hadoop-eclipse-plugin-1.0.0.jar (默认在hadoop-1.0.0\build\contrib\eclipse-plugin 下),放到eclipse/plugin目录下面,启动eclipse。


10、检查是否安装成功:

      打开Windows->Open Perspective->Other->如果有Map/Reduce则成功 或者是在 project explorer中看到 DFS Locations


     

     

        

参考:

  http://my.oschina.net/HIJAY/blog/190840

  http://blog.csdn.net/zhqingyun163/article/details/8148711

 《Hadoop技术内幕》

  相关解决方案