编译Hadoop 2.7.3 Eclipse插件

来源:互联网 发布:pc蛋蛋机器人源码 编辑:程序博客网 时间:2024/05/29 14:30

编译Hadoop 2.7.3 Eclipse插件

参考其他人的经验,其中遇到了参考文档中未遇到的问题。PS:本人对ANT的IVY这些东西不了解,所以在这个过程中也遇到一些问题。因此也不太导致这些问题的原因,不过还是解决了。下面将我遇到的问题和解决的方法列在下面。可以给像我这样的菜鸟参考,同时也希望懂的人可以留言指教。

准备

  • Eclipse Mars2:http://www.eclipse.org/downloads/
  • JDK_1_7_08:http://www.oracle.com/technetwork/java/javase/overview/index.html
  • ANT1.9.9:http://ant.apache.org/bindownload.cgi
  • Hadoop2.7.3:http://hadoop.apache.org/releases.html
  • Hadoop Eclipse 插件源码: https://github.com/winghc/hadoop2x-eclipse-plugin

步骤

  1. 安装JDK,配置好环境变量。
    • JAVA_HOME:C:\Program Files\Java\jdk1.7.0_80
    • CLASSPATH:.;%JAVA_HOME%\bin;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
    • PATH:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
  2. 安装ANT,配置好环境变量。
    • ANT_HOME:C:\Program Files\apache-ant-1.9.9
    • CLASSPATH:%ANT_HOME%\lib;D:\Hadoop-2.7.3
    • PATH:%ANT_HOME%\bin
  3. 解压Eclipse,解压目录不要有空格,例如“C:\Program Files\eclipse”。因为编译的命令中要输入eclipse的安装路径,如果路径存在空格,参数就会有错误。这里会把eclipse的安装路径当作“C:\Program”。
  4. 解压Hadoop,同样注意解压路径不要存在空格。
  5. 修改构建文件。对….\ivy\libraries.properties的修改内容如下:
    参考hadoop的share/hadoop/目录地下的jar包版本修改。
    这里写图片描述
 hadoop.version=2.7.3 commons-collections.version=3.2.2 htrace.version=3.1.0-incubating commons-io.version=2.4 commons-net.version=3.1 log4j.version=1.2.17 slf4j-api.version=1.7.10 slf4j-log4j12.version=1.7.10
  1. 修改..\src\contrib\eclipse-plugin里的build.xml,添加如下图的内容
    这里写图片描述

    这里写图片描述

  2. 修改保存后,在命令行中运行编译命令:
ant jar -Dversion=2.7.3 -Dhadoop.version=2.7.3 -Declipse.home=C:\eclipse -Dhadoop.home=D:\Hadoop-2.7.3\hadoop-2.7.3 –debug

命令参数说明:
- Dhadoop.version: Hadoop的版本号。
- Declipse.home: Eclipsed的安装目录。
- Dhadoop.home: Hadoop的解压目录。
- debug:显示编译过程中的信息。
运行结果如图1所示,则说明编译成功。

Alt 图1,ANT命令运行结果。

D:\hadoop2x-eclipse-plugin-master\hadoop2x-eclipse-plugin-master\build\contrib\eclipse-plugin目录下可以看到编译成功的插件,如图2所示。

Alt 图2

问题

问题:[ivy resolve] 卡住,好像是需要下载东西,但是链接访问不了。
解决方法:下载了最新的IVY,把jar包拷贝到ant的lib目录里,如图3所示。之后在执行编译就不出现上述问题。原因不明。
Alt 图3

参考文章

  • Ant之build.xml详解:
    http://www.cnblogs.com/clarkchen/archive/2011/03/10/1980194.html
  • Hadoop系列之-Hadoop2.7.2的Eclipse插件编译:
    http://blog.csdn.net/suzhi921/article/details/52116399
  • hadoop2x-eclipse-plugin在hadoop 2.7下编译
    http://blog.csdn.net/stormragewang/article/details/50834321
3 1