- 浏览: 2181706 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (682)
- 软件思想 (7)
- Lucene(修真篇) (17)
- Lucene(仙界篇) (20)
- Lucene(神界篇) (11)
- Solr (48)
- Hadoop (77)
- Spark (38)
- Hbase (26)
- Hive (19)
- Pig (25)
- ELK (64)
- Zookeeper (12)
- JAVA (119)
- Linux (59)
- 多线程 (8)
- Nutch (5)
- JAVA EE (21)
- Oracle (7)
- Python (32)
- Xml (5)
- Gson (1)
- Cygwin (1)
- JavaScript (4)
- MySQL (9)
- Lucene/Solr(转) (5)
- 缓存 (2)
- Github/Git (1)
- 开源爬虫 (1)
- Hadoop运维 (7)
- shell命令 (9)
- 生活感悟 (42)
- shell编程 (23)
- Scala (11)
- MongoDB (3)
- docker (2)
- Nodejs (3)
- Neo4j (5)
- storm (3)
- opencv (1)
最新评论
-
qindongliang1922:
粟谷_sugu 写道不太理解“分词字段存储docvalue是没 ...
浅谈Lucene中的DocValues -
粟谷_sugu:
不太理解“分词字段存储docvalue是没有意义的”,这句话, ...
浅谈Lucene中的DocValues -
yin_bp:
高性能elasticsearch ORM开发库使用文档http ...
为什么说Elasticsearch搜索是近实时的? -
hackWang:
请问博主,有用solr做电商的搜索项目?
Solr中Group和Facet的用法 -
章司nana:
遇到的问题同楼上 为什么会返回null
Lucene4.3开发之第八步之渡劫初期(八)
虽然使用Java编写MapReduce作业有点繁琐,但是对于刚入门hadoop的新手来说,有利于理解hadoop的一些底层实现,这无疑也是一种巨大的收获。目前大部分的MapReduce作业都是使用Hive,Pig完成的,当然也有用其他语言实现的,通过使用HadoopStreaming的方式,用原生Java写MR作业的只有很少一部分。在Hadoop2.x中,已经不支持eclipse的插件了,不过可以在配置的XML文件里,加入远程监控的端口,来监控hadoop集群。
由于1.0之后hadoop已经不自带eclipse的插件包了,所以得需要我们自己编译源码生成插件包,建议在Linux下编译,Windows下可能有时候会报一些莫名其妙的错误,先介绍下散仙的环境,Centos6.4的版本,hadoop1.2.0的版本,
hadoop的目录在/root/hadoop-1.2.0下面
eclipse的目录在/root/eclipse下面
总结一下如下的四步来完成编译eclipse插件的过程
下面散仙就来详细介绍下,每一步具体怎么操作,在第一步里我们需要向build.xml里面,加入的内容有
1,eclipse的根目录.
2.hadoop的版本号.
3.hadoop的一些引用包.
4,在javac里加入 includeantruntime="on".
内容如下所示:
散仙会在下文贴出整个XML,现在我们看第二大步的配置,修改build-contrib.xml,内容如下:
第三步的修改MANIFEST.MF内容如下:
第四步执行命令:截图如下:
最后,插件类生成的目录,截图如下:
下面散仙给出所有配置的全部信息,以供参考,下图的是build.xml里面的内容
build-contrib.xml的核心配置如下:只有一个地方,notepad++,定位截图如下:
下面是MANIFEST.MF里面的内容
至此,已经ant编译完毕,截图如下
启动eclipse后,截图如下:
至此,插件已经完美生成,并运行,因为受上传限制的影响,所以散仙在这里上传不了这个jar包,有需要的朋友们,可以联系散仙。
由于1.0之后hadoop已经不自带eclipse的插件包了,所以得需要我们自己编译源码生成插件包,建议在Linux下编译,Windows下可能有时候会报一些莫名其妙的错误,先介绍下散仙的环境,Centos6.4的版本,hadoop1.2.0的版本,
hadoop的目录在/root/hadoop-1.2.0下面
eclipse的目录在/root/eclipse下面
总结一下如下的四步来完成编译eclipse插件的过程
步骤 | 操作 |
1 | 进入/root/hadoop-1.2.0/src/contrib/eclipse-plugin下面,修改build.xml |
2 | 进入/root/hadoop-1.2.0/src/contrib下面,修改build-contrib.xml |
3 | /root/hadoop-1.2.0/src/contrib/eclipse-plugin/META-INF下面,修改MANIFEST.MF文件 |
4 | 使用shell命令进入/root/hadoop-1.2.0/src/contrib/eclipse-plugin下面,执行ant命令进行构建 |
下面散仙就来详细介绍下,每一步具体怎么操作,在第一步里我们需要向build.xml里面,加入的内容有
1,eclipse的根目录.
2.hadoop的版本号.
3.hadoop的一些引用包.
4,在javac里加入 includeantruntime="on".
内容如下所示:
<!-- 1,2步的配置 --> <property name="eclipse.home" location="/root/eclipse"/> <property name="version" value="1.2.0"/> <!--第3步的配置 --> <copy file="${hadoop.root}/hadoop-core-${version}.jar" tofile="${build.dir}/lib/hadoop-core.jar" verbose="true"/> <copy file="${hadoop.root}/lib/commons-cli-${commons-cli.version}.jar" tofile="${build.dir}/lib/commons-cli.jar" verbose="true"/> <copy file="${hadoop.root}/lib/commons-configuration-1.6.jar" tofile="${build.dir}/lib/commons-configuration.jar" verbose="true"/> <copy file="${hadoop.root}/lib/commons-httpclient-3.0.1.jar" tofile="${build.dir}/lib/commons-httpclient.jar" verbose="true"/> <copy file="${hadoop.root}/lib/commons-lang-2.4.jar" tofile="${build.dir}/lib/commons-lang.jar" verbose="true"/> <copy file="${hadoop.root}/lib/jackson-core-asl-1.8.8.jar" tofile="${build.dir}/lib/jackson-core-asl.jar" verbose="true"/> <copy file="${hadoop.root}/lib/jackson-mapper-asl-1.8.8.jar" tofile="${build.dir}/lib/jackson-mapper-asl.jar" verbose="true"/> <!--第4步的配置 --> includeantruntime="on">
散仙会在下文贴出整个XML,现在我们看第二大步的配置,修改build-contrib.xml,内容如下:
<!-- 原始的为off --> <property name="javac.deprecation" value="on"/>
第三步的修改MANIFEST.MF内容如下:
Bundle-ClassPath: classes/,lib/commons-cli.jar,lib/commons-httpclient.jar,lib/hadoop-core.jar,lib/jackson-mapper-asl.jar,lib/commons-configuration.jar,lib/commons-lang.jar,lib/jackson-core-asl.jar
第四步执行命令:截图如下:
最后,插件类生成的目录,截图如下:
下面散仙给出所有配置的全部信息,以供参考,下图的是build.xml里面的内容
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <!-- build.xml --> <project default="jar" name="eclipse-plugin"> <import file="../build-contrib.xml"/> <property name="eclipse.home" location="/root/eclipse"/> <property name="version" value="1.2.0"/> <path id="eclipse-sdk-jars"> <fileset dir="${eclipse.home}/plugins/"> <include name="org.eclipse.ui*.jar"/> <include name="org.eclipse.jdt*.jar"/> <include name="org.eclipse.core*.jar"/> <include name="org.eclipse.equinox*.jar"/> <include name="org.eclipse.debug*.jar"/> <include name="org.eclipse.osgi*.jar"/> <include name="org.eclipse.swt*.jar"/> <include name="org.eclipse.jface*.jar"/> <include name="org.eclipse.team.cvs.ssh2*.jar"/> <include name="com.jcraft.jsch*.jar"/> </fileset> </path> <!-- Override classpath to include Eclipse SDK jars --> <path id="classpath"> <pathelement location="${build.classes}"/> <pathelement location="${hadoop.root}/build/classes"/> <fileset dir="${hadoop.root}"> <include name="**/*.jar" /> </fileset> <path refid="eclipse-sdk-jars"/> </path> <!-- Skip building if eclipse.home is unset. --> <target name="check-contrib" unless="eclipse.home"> <property name="skip.contrib" value="yes"/> <echo message="eclipse.home unset: skipping eclipse plugin"/> </target> <target name="compile" depends="init, ivy-retrieve-common" unless="skip.contrib"> <echo message="contrib: ${name}"/> <javac encoding="${build.encoding}" srcdir="${src.dir}" includes="**/*.java" destdir="${build.classes}" debug="${javac.debug}" deprecation="${javac.deprecation}" includeantruntime="on"> <classpath refid="classpath"/> </javac> </target> <!-- Override jar target to specify manifest --> <target name="jar" depends="compile" unless="skip.contrib"> <mkdir dir="${build.dir}/lib"/> <!-- <copy file="${hadoop.root}/build/hadoop-core-${version}.jar" tofile="${build.dir}/lib/hadoop-core.jar" verbose="true"/> --> <!-- <copy file="${hadoop.root}/build/ivy/lib/Hadoop/common/commons-cli-${commons-cli.version}.jar" todir="${build.dir}/lib" verbose="true"/>--> <copy file="${hadoop.root}/hadoop-core-${version}.jar" tofile="${build.dir}/lib/hadoop-core.jar" verbose="true"/> <copy file="${hadoop.root}/lib/commons-cli-${commons-cli.version}.jar" tofile="${build.dir}/lib/commons-cli.jar" verbose="true"/> <copy file="${hadoop.root}/lib/commons-configuration-1.6.jar" tofile="${build.dir}/lib/commons-configuration.jar" verbose="true"/> <copy file="${hadoop.root}/lib/commons-httpclient-3.0.1.jar" tofile="${build.dir}/lib/commons-httpclient.jar" verbose="true"/> <copy file="${hadoop.root}/lib/commons-lang-2.4.jar" tofile="${build.dir}/lib/commons-lang.jar" verbose="true"/> <copy file="${hadoop.root}/lib/jackson-core-asl-1.8.8.jar" tofile="${build.dir}/lib/jackson-core-asl.jar" verbose="true"/> <copy file="${hadoop.root}/lib/jackson-mapper-asl-1.8.8.jar" tofile="${build.dir}/lib/jackson-mapper-asl.jar" 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> </project>
build-contrib.xml的核心配置如下:只有一个地方,notepad++,定位截图如下:
<property name="javac.deprecation" value="on"/>
下面是MANIFEST.MF里面的内容
Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: MapReduce Tools for Eclipse Bundle-SymbolicName: org.apache.hadoop.eclipse;singleton:=true Bundle-Version: 0.18 Bundle-Activator: org.apache.hadoop.eclipse.Activator Bundle-Localization: plugin Require-Bundle: org.eclipse.ui, org.eclipse.core.runtime, org.eclipse.jdt.launching, org.eclipse.debug.core, org.eclipse.jdt, org.eclipse.jdt.core, org.eclipse.core.resources, org.eclipse.ui.ide, org.eclipse.jdt.ui, org.eclipse.debug.ui, org.eclipse.jdt.debug.ui, org.eclipse.core.expressions, org.eclipse.ui.cheatsheets, org.eclipse.ui.console, org.eclipse.ui.navigator, org.eclipse.core.filesystem, org.apache.commons.logging Eclipse-LazyStart: true Bundle-ClassPath: classes/,lib/commons-cli.jar,lib/commons-httpclient.jar,lib/hadoop-core.jar,lib/jackson-mapper-asl.jar,lib/commons-configuration.jar,lib/commons-lang.jar,lib/jackson-core-asl.jar Bundle-Vendor: Apache Hadoop
至此,已经ant编译完毕,截图如下
启动eclipse后,截图如下:
至此,插件已经完美生成,并运行,因为受上传限制的影响,所以散仙在这里上传不了这个jar包,有需要的朋友们,可以联系散仙。
评论
2 楼
gainyray
2014-01-02
弄好了,将hadoop/hadoop-core-1.2.1.jar copy到hadoop/build下 然后执行命令: ant jar 就编译好了
1 楼
gainyray
2014-01-02
楼主,最后编译得时候出现java.net.ConnectException: Connection timed out.
然后找到用ant compile -Doffline=true 这个命令编译,显示build sucessful.但是问题是在指定得路径下找不到编译好的jar包,楼主有时间看看,先谢谢了。。。
然后找到用ant compile -Doffline=true 这个命令编译,显示build sucessful.但是问题是在指定得路径下找不到编译好的jar包,楼主有时间看看,先谢谢了。。。
发表评论
-
Apache Flink在阿里的使用(译)
2019-02-21 21:18 1171Flink是未来大数据实时 ... -
计算机图形处理的一些知识
2018-04-25 17:46 1227最近在搞opencv来做一些 ... -
如何在kylin中构建一个cube
2017-07-11 19:06 1262前面的文章介绍了Apache Kylin的安装及数据仓 ... -
Apache Kylin的入门安装
2017-06-27 21:27 2142Apache Kylin™是一个开源的分布式分析引擎,提供 ... -
ES-Hadoop插件介绍
2017-04-27 18:07 1990上篇文章,写了使用spark集成es框架,并向es写入数据,虽 ... -
如何在Scala中读取Hadoop集群上的gz压缩文件
2017-04-05 18:51 2128存在Hadoop集群上的文件,大部分都会经过压缩,如果是压缩 ... -
如何收集项目日志统一发送到kafka中?
2017-02-07 19:07 2790上一篇(http://qindongliang.iteye. ... -
Hue+Hive临时目录权限不够解决方案
2016-06-14 10:40 4696安装Hue后,可能会分配多个账户给一些业务部门操作hive,虽 ... -
Hadoop的8088页面失效问题
2016-03-31 11:21 4446前两天重启了测试的hadoop集群,今天访问集群的8088任 ... -
Hadoop+Hbase集群数据迁移问题
2016-03-23 21:00 2520数据迁移或备份是任何 ... -
如何监控你的Hadoop+Hbase集群?
2016-03-21 16:10 4917前言 监控hadoop的框架 ... -
Logstash与Kafka集成
2016-02-24 18:44 11616在ELKK的架构中,各个框架的角色分工如下: Elastic ... -
Kakfa集群搭建
2016-02-23 15:36 2644先来整体熟悉下Kafka的一些概念和架构 (一)什么是Ka ... -
大数据日志收集框架之Flume入门
2016-02-02 14:25 4184Flume是Cloudrea公司开源的一款优秀的日志收集框架 ... -
Apache Tez0.7编译笔记
2016-01-15 16:33 2513目前最新的Tez版本是0.8,但还不是稳定版,所以大家还 ... -
Bug死磕之hue集成的oozie+pig出现资源任务死锁问题
2016-01-14 15:52 3828这两天,打算给现有的 ... -
Hadoop2.7.1和Hbase0.98添加LZO压缩
2016-01-04 17:46 25991,执行命令安装一些依赖组件 yum install -y ... -
Hadoop2.7.1配置NameNode+ResourceManager高可用原理分析
2015-11-11 19:51 3176关于NameNode高可靠需要配置的文件有core-site ... -
设置Hadoop+Hbase集群pid文件存储位置
2015-10-20 13:40 2846有时候,我们对运行几 ... -
Hadoop+Maven项目打包异常
2015-08-11 19:36 1561先简单说下业务:有一个单独的模块,可以在远程下载Hadoop上 ...
相关推荐
【编译Hadoop Eclipse插件】是开发Hadoop应用程序的重要步骤,它允许开发者在Eclipse环境中直接编写、调试和管理Hadoop项目。本教程将详细解释如何编译和安装Hadoop Eclipse插件。 首先,确保你已经安装了**Java 8*...
hadoop Eclipse插件Linux版本,编译环境hadoop2.2.0
本人编译的eclipse插件,验证使用正常。插件源码从github获取(hadoop2x-eclipse-plugin) 编译使用环境为: 操作系统:debian 7.6.0(32位) JDK版本:1.6.0_32 eclipse版本:4.4 hadoop版本:2.4.1
- **重要性**:JDK1.8是Eclipse Mars和Hadoop2.7.5配套使用的必备组件之一,因为Hadoop2.7.5及其插件都是基于JDK1.8编译的,确保了版本之间的兼容性。 #### 三、使用注意事项 - 在安装和配置过程中,需要注意版本...
在centos7进行编译出来的,亲测可用
hadoop2.7.1的linux下eclipse支持插件。已经经过检查,安装后在eclipse下,可以正常上传,下载,删除hdfs文件,以及跑mapreduce程序。 编译环境:ant1.9.6 jdk1.8 hadoop2.7.1
该插件是在JDK 1.8.181版本环境下编译,同时兼容了Ant 1.10.9构建工具和Eclipse Kepler版本,这表明它对于开发者来说具有良好的兼容性和稳定性。 Hadoop,作为大数据处理的核心框架,提供了分布式存储和计算的能力...
Windows10 64位系统,eclipse下,连接Linux下hadoop的插件,已编译完成,可放置在eclipse安装目录plugins下,本版本已测试
自己编译的hadoop-1.2.0的eclipse插件,jdk1.6的。在windows和linux下测试可用。
为了在Eclipse中编写和运行Hadoop MapReduce程序,你需要安装Hadoop插件,如Hadoop插件for Eclipse(HDPE)或者使用Eclipse的通用插件如Maven,通过Maven的POM.xml文件管理依赖项。这样,你可以在Eclipse中创建、...
这个压缩包“linux-jdk-1.7+hadoop-eclipse-plugin2.6.0.zip”包含了Linux环境下使用的JDK1.7和自编译的Hadoop-Eclipse-Plugin 2.6.0版本,这是一个专门为Eclipse定制的插件,用于简化Hadoop MapReduce项目的开发...
首先,你需要在Eclipse中安装Hadoop相关的插件,如Hadoop插件(如Hadoop-Eclipse-Plugin),它允许你在Eclipse内直接创建和管理Hadoop项目。这可以通过Eclipse的“帮助”菜单下的“安装新软件”选项来完成。安装插件...
2. **Eclipse插件**:Eclipse是一个强大的Java IDE,其可扩展性是通过插件机制实现的。针对特定的开发需求,Eclipse提供了众多插件,如Mylyn用于任务管理,Subversive用于版本控制等。Hadoop插件则是专为Hadoop开发...
Linux下Maven在Eclipse中安装测试Hadoop的收集 Maven是一种流行的项目管理和构建工具,它可以帮助开发者快速地构建和管理项目。在Linux环境下,使用Maven可以轻松地构建和管理项目。在本文中,我们将介绍如何在...
【描述】提到,这个插件主要安装在Eclipse的`plugins`目录下,意味着它是Eclipse插件的标准安装方式。通过这种方式,开发者可以在Eclipse内部直接访问和配置Hadoop相关的资源,例如提交MapReduce作业、监控任务状态...
本篇将详细介绍`hadoop.dll`和`winutils.exe`这两个在Hadoop在Windows环境下运行时的重要组件,以及它们在Hadoop Eclipse插件配置中的作用。 首先,`hadoop.dll`是Hadoop在Windows系统上运行时必需的一个动态链接库...
标题"Hadoop2x-eclipse-plugin-master"指的是一个针对Hadoop 2.x版本的Eclipse插件的源码库,主要用于帮助开发人员在Windows操作系统上使用MyEclipse IDE编写和运行MapReduce程序。这个插件使得开发者能够在本地环境...
- 安装Eclipse的Hadoop插件,如Mondrian或Hadoop-Plugin。 - 创建新的Java项目,导入Hadoop的源代码或库。 - 编写MapReduce程序,利用Eclipse的强大调试功能测试和优化代码。 7. **运行Hadoop程序**: - 使用...
1.这个插件是我查阅资料后成功编译的,hadoop版本为1.0.4 eclipse为3.7,linux、win版本均可。 2.如果你之前尝试过别的hadoop-eclipse*jar插件而没有成功,此时eclipse已经"不干净了",需要新解压的eclipse,将该jar包...