`

编译Hadoop的Eclipse插件(Windows)

 
阅读更多

使用的是CDH3u4的hadoop,和单独的hadoop差不多,但是参考网上的教程的时候遇到的问题还是很多的,所以就记录下来。

1.添加工程

在Eclipse中Import导入已有的工程目录:\src\contrib\eclipse-plugin\

2.添加build-contrib.xml

直接把\src\contrib\build-contrib.xml拖到工程中就可以了,注意选择复制的添加方式。

3.修改build-contrib.xml

这里是重头戏。

找到<property name="hadoop.root" location="${root}/../../../"/>修改location为hadoop的实际解压目录,在其下添加

<property name="eclipse.home" location="你的Eclipse安装目录"/>
<property name="version" value="Hadoop安装版本"/>

例如

<property name="eclipse.home" location="D:/Eclipse"/>
<property name="version" value="0.20.2-cdh3u4"/>

具体位置需要改为你的,注意location里的斜杠方向。CDH3版本号多了个后缀,要么直接加上cdh3u4,要么不加但是把所有用到的有version的jar包都去掉cdh3u4,显然前一种方法比较方便。

4.修改build.xml

找到<import file="../build-contrib.xml"/>,改为<import file="build-contrib.xml"/>

添加hadoop-core的jar包,这个问题足足困扰了两天。

找到<path id="classpath">,在下面添加 <pathelement location="${hadoop.root}/hadoop-core-0.20.2-cdh3u4.jar"/>

这个文件的位置变了,直接用复制过来的。

5.复制一些文件

hadoop-core-0.20.2-cdh3u4.jar 到 \build\hadoop-core-0.20.2-cdh3u4.jar;\lib\commons-cli-1.2.jar到\build\ivy\lib\Hadoop\common\commons-cli-1.2.jar,如果上述目录没有则新建一下。

6.编译

在build.xml上右击run,选择Ant Run就可以了。

 

7.继续修改jar文件

在eclipse里面添加了文件之后,添加远程HDFS后双击时会出现一个错误提示(不影响正常使用)

An internal error occurred during: "Map/Reduce location status updater".
org/codehaus/jackson/map/JsonMappingException
An internal error occurred during: "Map/Reduce location status updater".
org/codehaus/jackson/JsonProcessingException

其中第二个是在部分改正了第一个问题后才会出现的,原因都一样,编译出来的jar包里面没有包含jackson-core-asl-1.5.2.jar和jackson-mapper-asl-1.5.2.jar包,打开这两个包,然后把里面的org文件夹都复制到hadoop-core-0.20.2-cdh3u4.jar中的class文件夹中,就能解决。

然后打开DFS Location后又会有错误

An internal error occurred during: "Connecting to DFS Hadoop0".
org/apache/hadoop/thirdparty/guava/common/collect/LinkedListMultimap
解决方法也一样,把guava-r09-jarjar.jar中的org文件夹也添加到hadoop-core-0.20.2-cdh3u4.jar中去。

 

 

此外网上说需要修改源代码,但是我实际比较了下,在cdh3u4里面已经改过了,另外也有要求对编译生成的jar包添加部分lib实现登陆功能,但也是对以前版本的,我这个版本并不需要。具体可以根据运行插件时的错误来添加相应的包,跟上面一样。

大家也可以去https://code.google.com/p/hadoop-eclipse-plugin/downloads/list下载别人编译好的文件,我也是通过和这里面的代码进行比较后才发现不需要添加lib的

 

这次整个过程的主要的问题是对ant的使用缺乏了解,以为和Eclipse的一些classpath是通用的,所以明明在eclipse里面添加了对应的jar包,但是仍然提示无法找到,浪费了好几天时间……

ant是基于xml的,所以改配置还是比较方便,只要知道classpath是用了哪几个参数就可以了。

截图就没高兴截,个人感觉光看这些叙述应该够了。

 

部分参考的内容:

在eclipse中配置hadoop插件

http://www.cnblogs.com/hiddenfox/archive/2011/11/26/2264461.html

《转载》hadoop cdh3u3 eclipse插件编译

http://www.cnblogs.com/riverphoenix/archive/2012/05/03/2481034.html

hadoop-eclipse-plugin-for-cdh3-u3

http://blog.thisisfeifan.com/2012/04/hadoop-eclipse-plugin-for-cdh3-u3.html

分享到:
评论

相关推荐

    编译hadoop eclipse插件文档

    【编译Hadoop Eclipse插件】是开发Hadoop应用程序的重要步骤,它允许开发者在Eclipse环境中直接编写、调试和管理Hadoop项目。本教程将详细解释如何编译和安装Hadoop Eclipse插件。 首先,确保你已经安装了**Java 8*...

    hadoop2.7.7 Eclipse 插件,自己编译,使用有效

    hadoop版本2.7.7 Eclipse 版本4.5.1,dfs location插件,自己编译成功,使用有效,将该jar包放到eclipse的plugins目录下

    Hadoop Eclipse插件2.2.0版本

    hadoop Eclipse插件Linux版本,编译环境hadoop2.2.0

    hadoop_eclipse插件

    Hadoop Eclipse插件是开发Hadoop MapReduce程序的重要工具,它允许开发者在Eclipse集成开发环境中直接创建、编辑、运行和调试Hadoop作业。通过这个插件,程序员可以方便地将Java应用程序部署到Hadoop集群上,极大地...

    hadoop2.2.0的eclipse插件

    自己编译的hadoop-eclipse-plugin-2.2.0.jar插件:hadoop版本hadoop-2.2.0、eclipse版本:Eclipse Standard 4.3.1

    用于hadoop开发的eclipse插件

    本人编译的eclipse插件,验证使用正常。插件源码从github获取(hadoop2x-eclipse-plugin) 编译使用环境为: 操作系统:debian 7.6.0(32位) JDK版本:1.6.0_32 eclipse版本:4.4 hadoop版本:2.4.1

    自己编译的hadoop-1.1.1 eclipse插件

    自己编译的hadoop-1.1.1 eclipse插件

    Hadoop-Eclipse插件2.7.6

    这是用hadoop官方源码生成的hadoop用在windows环境下eclipse 的插件。更新了最新的jar包文件。与资源。

    hadoop1.0.4 eclipse插件及编译方法

    标题"hadop1.0.4 eclipse插件及编译方法"所提及的是如何在Eclipse中安装和使用Hadoop 1.0.4版本的插件,以及如何编译Hadoop项目。在这个过程中,开发者通常会遇到以下几个关键知识点: 1. **Hadoop Eclipse插件安装...

    hadoop-eclipse-插件编译方法

    本文将详细介绍如何手动编译Hadoop Eclipse插件,并对其进行配置,以便更好地支持Hadoop项目的开发。 #### 二、准备工作 在开始编译Hadoop Eclipse插件之前,请确保已经完成以下步骤: 1. **安装Java JDK**:确保...

    Hadoop_eclipse-plugin编译方法

    然而,并非所有的Hadoop版本都预编译了Eclipse插件,这意味着开发者需要自行编译以适应自己的开发环境。本文将详细介绍如何编译Hadoop_eclipse-plugin,以便在Eclipse中使用。 首先,你需要准备一个全新的Eclipse...

    hadoop2.7.1 eclipse插件

    hadoop2.7.1的eclipse插件,编译环境,eclipse 4.4(luna) ,jdk1.7,ant1.9.6,maven3.3,hadoop2.7.1,centos6.7,jdk1.7 要注意的是开发黄金下jdk版本必须是jdk1.7及以上,否则无法使用

    hadoop2.8.1 eclipse 插件

    hadoop--plugin-2.8.1的eclipse 插件,已经编译完成,下载hadoop2x-eclipse-plugin源代码https://github.com/winghc/hadoop2x-eclipse-plugin

    hadoop2.2 eclipse插件编译

    总的来说,编译Hadoop 2.2的Eclipse插件是一个涉及环境配置、源码编译、插件安装和测试的过程。熟悉这些步骤将有助于提升Hadoop开发者的工作效率,让他们在Eclipse中更加流畅地进行大数据应用的开发。

    hadoop-1.0.0 eclipse插件

    hadoop 1.0版本中已经不再提供eclipse插件jar包,此hadoop-eclipse-plugin-1.0.0.jar包在eclipse 3.7上编译hadoop源码产生并在eclipse3.7版本上成功运行。

    hadoop-eclipse-plugin-2.6.0.jar.zip_2.6.0_hadoop_hadoop plugin

    在实际的开发过程中,为了提高效率并减少错误,Hadoop提供了Eclipse插件,即本文讨论的`hadoop-eclipse-plugin-2.6.0.jar`。这个插件是针对Hadoop 2.6.0版本设计的,主要目标是集成Eclipse IDE,使得开发者可以在...

    hadoop2.8.1的eclipse插件下载

    在Hadoop2.8.1,jdk1.8.0_144,eclipse mars 2环境下成功编译的Hadoop eclipse插件,经测试,正常运行。目前2.8.1版本较少。

    eclipse hadoop 2.6.1插件

    编译的eclipse hadoop 2.6.1插件

    hadoop2.9.2 eclipse插件

    hadoop2.9.2 eclipse插件,里面有说明。1、使用hadoop-eclipse-plugin-2.9.2.jar该eclipse插件,可以访问远程的hdfs 2、使用hadoop-eclipse-plugin-2.9.2-local.jar,访问本地的文件系统 3、wintuils_hadoop.zip本地...

    eclipse的hadoop插件

    在实际开发过程中,掌握Hadoop和Eclipse插件的使用对于提升MapReduce开发效率至关重要。通过熟练运用这些工具,开发者可以更专注于业务逻辑,而不是繁琐的部署和调试工作。同时,随着Hadoop版本的更新,开发者也需要...

Global site tag (gtag.js) - Google Analytics