装好了hadoop后发现有装个eclipse的必要,于是参照文章A(http://www.powerxing.com/hadoop-build-project-using-eclipse/)进行安装,在安装hadoop-eclipse-plugin的过程中遇到了很多麻烦,花了三天时间才搞定(昨天搞定的),有必要记录下。

系统:Ubuntu14.04

eclipse版本: eclipse-standard-kepler-SR2-linux-gtk-x86_64 安装路径: /opt

hadoop版本: hadoop.2.7.2 安装路径:/usr/local

文章A中使用的是GitHub(https://github.com/winghc/hadoop2x-eclipse-plugin)提供的hadoop-eclipse-kepler-plugin-2.6.0.jar,

但是我的hadoop版本是2.7.2,所以需要另外制作插件,好在这篇Github文章提供了怎么build插件的方法。

下载hadoop2x-eclipse-plugin-master,按照说明进行build

ant jar -Dversion=2.7.2 -Dhadoop.version=2.7.2 -Declipse.home=/opt/eclipse -Dhadoop.home=/usr/local/hadoop

结果报错(Error:不能copy jar包到哪哪,没有发现jar包之类的),一看应该是没有找到对应的jar文件,所以不能copy报了错。Github的文字也提供了complie issues resolve:

  1. For different hadoop, adjust ${hadoop2x-eclipse-plugin-master}/ivy/libraries.properties, to match hadoop dependency lib version

肯定是jar包版本不对了,打开libraries.properties修改之。那么多的jar包,哪去找正确的版本号呢?

之前的报错信息里有,build过程中copy的jar包都来源与$HADOOP_HOME/share/hadoop/common/lib($HADOOP_HOME是hadoop的安装目录)

好,对照这一个一个把版本号改好了,又来

ant jar -Dversion=2.7.2 -Dhadoop.version=2.7.2 -Declipse.home=/opt/eclipse -Dhadoop.home=/usr/local/hadoop

然后开始了漫长的编译过程,炉石打起。

22min后,看到BUILD SUCCESS了,立马去找编译好的jar包,(路径:${hadoop2x-eclipse-plugin}/build/contrib/eclipse-plugin/),结果没有发现应该出现的hadoop-eclipse-plugin-2.7.2.jar包,想半天不清楚原因,那就sudo下试试。

然后看到了不一样的输出,编译过程中在mkdir,所以刚才是权限不够所以mkdir没有成功,居然都不报个错出来,白等了那么久,坑啊~

只用了30多秒就BUILD SUCCESS了。继续参照文章A的步骤,将hadoop-eclipse-plugin-2.7.2jar copy到 /opt/eclipse/plugins下, 命令行执行 /opt/eclipse/eclipse -clean

配置好 Hadoop-Eclipse-Plugin,结果在想点开DFS Location下的文件目录时报错:an internal error occurred during: "Connecting to DFS ..."

明明build success了啊,为什么还要出错,Hadoop-Eclipse-Plugin配置错啦?Hadoop配置错啦?Eclipse版本有问题啦?还是说有什么权限问题?作为一个小白,不能从原理上去思考解决问题,只能各种百度google,但与hadoop2.7.2有关的信息都很少,基本都是在解决老版本上遇到的问题,没有能够直接解决我遇到的问题的,然后一天过去了...

找到了一些文章:

http://stackoverflow.com/questions/15195734/hadoop-eclipse-mapreduce-is-not-working

http://stackoverflow.com/questions/16382728/eclipse-connection-dfs-location

表明了可能我的插件hadoop-eclipse-plugin-2.7.2.jar中缺少必要的jar包,怎么知道缺少那些包呢?然后又是一天的百度google...

同样网上的解答都是关于老版本的,Hadoop2.7.2所需要的jar包比hadoop0.2所需要的jar包多了去了,他们缺的我这里都没缺。

不过文章http://blog.sina.com.cn/s/blog_6c288ff50102v4il.html给了我些启示。

file-roller /opt/eclipse/plugins/hadoop-eclipse-plugin-2.7.2.jar

看到打包进去的jar包,然后和Github提供的hadoop-eclipse-kepler-plugin-2.6.0.jar进行对比,发现我没有commons-httpclient-3.1-jar而我没有,添加进去,

opt/eclipse/eclipese -clean

仍然会报出同样的错,应该还少jar包。上网查半天还是不知道少了那些包,实在是有点郁闷了,放一放,看美剧打炉石。

第三天一早,往电脑前一坐,突然灵光一现,想起网上有个hadoop2.7.2的eclipse插件(http://download.csdn.net/download/tondayong1981/9432425),先看看这个插件能不能用。这个插件是Tested with following eclipse version for hadoop2.7.2: Eclipse Java EE IDE for Web Developers. Version: Mars.1 Release (4.5.1) Build id: 20150924-1200,为了控制变量,我还去下它对应版本的eclipse,在下的同时我用我的kepler试试能不能用,终于不报错了,哈哈哈!

拿我自己编译的插件和这个能用的插件做对比,发现除了之前已经添加进去的commons-httpclient-3.1-jar,还少了commons-io-${commons-io.version}.jar和servlet-api-${servlet-api.version}.jar,修改${hadoop2x-eclipse-plugin}/src/contrib/eclipse-plugin/build.xml,重新build,也能够用了,至此问题得到解决。

在这里分享我改进过后的hadoop2x-eclipse-plugin-master,用来制作hadoop-eclipse-plugin.jar,这样大家可以少走点弯路。

链接: http://pan.baidu.com/s/1jHiFYKI 密码: 2yiu

Eclipse,hadoop2.7.2 hadoop-eclipse-plugin.jar的制作的更多相关文章

  1. hadoop eclipse插件生成

    hadoop eclipse插件生成 做了一年的hadoop开发.还没有自动生成过eclipse插件,一直都是在网上下载别人的用,今天有时间,就把这段遗憾补回来,自己生成一下,废话不说,開始了. 本文 ...

  2. 使用hadoop eclipse plugin提交Job并添加多个第三方jar

    来自:http://heipark.iteye.com/blog/1171923 通过 "conf.set("tmpjars", jars);" 可以设置第三方 ...

  3. 如何自己编译生成hadoop的eclipse插件,如hadoop-eclipse-plugin-2.6.0.jar

    不多说,直接上干货! 如何自己编译生成Eclipse插件,如hadoop-eclipse-plugin-2.6.0.jar 一.相关软件的安装和配置 (一)JDK的安装和配置 Jdk 1.7*安装并配 ...

  4. Windows平台上使用ANT编译Hadoop Eclipse Plugin

    一.准备工作:   1.安装JDK 下载页面:http://www.oracle.com/technetwork/java/javase/downloads/index.html JDK6,JDK7都 ...

  5. 在fedora20下配置hadoop2.5.1的eclipse插件

    (博客园-番茄酱原创) 在我的系统中,hadoop-2.5.1的安装路径是/opt/lib64/hadoop-2.5.1下面,然后hadoop-2.2.0的路径是/home/hadoop/下载/had ...

  6. Creating a Hadoop-2.x project in Eclipse

    Creating a Hadoop-2.x project in Eclipse hortonworks:MapReduce Ports http://docs.hortonworks.com/HDP ...

  7. Hadoop Eclipse开发环境搭建

        This document is from my evernote, when I was still at baidu, I have a complete hadoop developme ...

  8. windows7+eclipse+hadoop2.5.2环境配置

    windows7+eclipse+hadoop2.5.2环境配置    一.hadoop集群环境配置 参考我的前一篇文章(ubuntu + hadoop2.5.2分布式环境配置 http://www. ...

  9. 如何自己编译生成Eclipse插件,如hadoop-eclipse-plugin-2.2.0.jar

    如何自己编译生成Eclipse插件,如hadoop-eclipse-plugin-2.2.0.jar http://cxshun.iteye.com/blog/1876366 大数据是当今的一个热门话 ...

随机推荐

  1. iOS中枚举定义的三种方式

    最简单的方式 typedef enum{ num1 = 0, num2 = 1, num3 = 2 }num; 同时我们还可以使用NS_ENUM的方式定义枚举 typedef NS_ENUM (NSI ...

  2. 【转】C#注册快捷键

    转自:http://blog.csdn.net/xiahn1a/article/details/42561015 这里需要引用到“user32.dll”.对于Win32的API,调用起来还是需要dll ...

  3. QT5-控件-QFontComboBox-字体选择下拉列表,使用一个标签查看效果

    #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include <QFontComboBox> ...

  4. Android webview 应用

    现在在android把一个网站打包成apk 是很简单的事,不懂一点代码的都可以去百度生成一个apk,app.当然样式就不是你所能控制的. 今天我就介绍一下 android 的 webview 在And ...

  5. DEDE常见的错误(转)

    1:dedecms文章录入的时候,如何控制文章重复.   在dede/article_add.php里面,加入该程序就OK了    if($cfg_check_title == 'Y'){      ...

  6. T-SQL事务实例

    begin try begin tran ,'); ; --RAISERROR ('Error raised in TRY block.',16,1); commit tran end try beg ...

  7. Java中关于String的split(String regex, int limit) 方法

    今天在对一个String对象进行拆分的时候,总是无法到达预计的结果.呈现数据的时候出现异常,后来debug之后才发现,错误出在String spilt上,于是开始好好研究下这东西,开始对api里的sp ...

  8. 在iOS开发中使用FMDB-备用

    SQLite (http://www.sqlite.org/docs.html) 是一个轻量级的关系数据库.iOS SDK很早就支持了SQLite,在使用时,只需要加入 libsqlite3.dyli ...

  9. Altium Designer summer 9 布线 - 差分对布线

    差分信号系统是采用双绞线进行信号传输的,双绞线中的一条信号线传送原信号,另一条传送的是与原信号反相的信号.差分信号是为了解决信号源和负载之间没有良好的参考地连接而采用的方法,它对电子产品的干扰起到固有 ...

  10. 51单片机C语言学习笔记7:关于.c文件和.h文件

    1)h文件作用 1 方便开发:包含一些文件需要的共同的常量,结构,类型定义,函数,变量申明: 2 提供接口:对一个软件包来说可以提供一个给外界的接口(例如: stdio.h). 2)h文件里应该有什么 ...