装好了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. [转]MySQL数据库的热备份

    一.系统环境描述:      1.两台数据库服务器,A和B:      2.当前A正在使用,将作为主服务器,B为准备用来做备用数据库服务器:      3.要进行热备份的数据库中含有类型为MyISAM ...

  2. jQuery mini ui 2

    1.<a class="mini-button" iconCls="icon-add" onclick="addRow()" plai ...

  3. 怎样取得数组对象和arralist 的长度

    数组用length属性 ArrayList用size()方法

  4. WPF Mahapps.Metro 设置主题样式

    /// <summary> /// 设置App样式 /// </summary> /// <param name="accentName">窗口 ...

  5. (四)Angularjs - 小实例(2)

    自定义指令编写时钟 模板 <!-- 模板文件 --><html> <!-- 内置的ng-app指令通知编译器启动AngularJS框架--> <body ng ...

  6. python 的内置函数(1)

     19.内置函数:              abs():求绝对值              bool():求一个值是True or False ,其中False值有 0 ,空字符串'',None,空 ...

  7. Microsoft OLE DB Provider for SQL Server 错误 '80040e21'

    我的是因为数据库满了,正在向服务商申请增加数据库容量 原文地址:Microsoft OLE DB Provider for SQL Server 错误 '800作者:欧阳IT记事本 昨天打开网站还正常 ...

  8. c++ 高效文本读写

    上数据结构课,做project,数据老师要求我们多做测试,而文本文件可以有效记录这些东东,这样我想起了文件的读写,下面是渣渣我个人的一些想法,大神们看见有错的,尽管指出(orz~~~囧,木有人看我的呀 ...

  9. AD:想两VIA在同一plane层不同连接(两VIA接同网络),一全连接、一花孔接,实现方法

    可以用room方法处理!

  10. java日期int和String互转

    /** * 时间unix转换 * @param timestampString * @return */ public static String TimeStampDate(String times ...