hadoop1.2 eclipse插件编译

目录说明

在编译之前,我们需要先下载后hadoop 1.2.1的源码文件,并解压到合适的位置。目录结构如下:

Eclipse: D:\eclipse

Hadoop: D:\hadoop-1.2.1

Step1导入 Hadoop-eclipse 插件工程

1. 下载hadoop-1.2.1.tar.gz,并解压缩到 D盘根目录下
2. 在 Eclipse 中选择 File—>Import—>General/Existing Projectsinto Workspace 导入Hadoop的Eclipse插件项目。选择路径为D:\hadoop-1.2.1\src\contrib\eclipse-plugin,然后点击Finish.其默认的项目名称是 MapReduceTools。(最好将该文件提取出来导入)

Step2导入所需 jar 包

在项目 MapReduceTools 中新建 lib 目录,将 hadoop-1.2.1 下的 hadoop-core-1.2.1.jar(重命名为 hadoop-core.jar),及其 lib 目录下的 commons-cli-1.2.jar、commons-lang-2.4.jar、commons-configuration-1.6.jar、jackson-mapper-asl-1.8.8.jar、jackson-core-asl-1.8.8.jar、commons-httpclient-3.0.1.jar拷贝到该目录。

Step3修改build-contrib.xml

将D:\hadoop-1.2.1\src\contrib目录下的build-contrib.xml文件拷贝到项目目录中,注意:build-contrib.xml文件拷贝到当前项目的一级目录中,拷贝完成以后修改build-contrib.xml文件。修改的内容如下。

<!-- 修改 hadoop 存放目录   -->

<property name="hadoop.root"location="D:/hadoop-1.2.1"/>

<!-- 添加 eclipse 存放目录  -->

<property name="eclipse.home"location="D:/eclipse" />

<!-- 添加 hadoop 版本   -->

<property name="version"value="1.2.1"/>

Step4修改build.xml

<?xmlversion="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 informationregarding copyright ownership.

The ASF licenses this file to You under theApache License, Version 2.0

(the "License"); you may not usethis 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 agreedto in writing, software

distributed under the License is distributedon an "AS IS" BASIS,

WITHOUT WARRANTIES OR CONDITIONS OF ANYKIND, either express or implied.

See the License for the specific languagegoverning permissions and

limitations under the License.

-->

<projectdefault="jar" name="eclipse-plugin">

<!-- 1.修改 build-contrib.xml的位置,去掉"../" -->

<importfile="build-contrib.xml"/>

<!-- 2.添加如下,否则提示"软件包 org.apache.hadoop.fs 不存在" -->

<path id="hadoop-jars">

<fileset dir="${hadoop.root}/">

<includename="hadoop-*.jar"/>

</fileset>

</path>

<path id="eclipse-sdk-jars">

<filesetdir="${eclipse.home}/plugins/">

<includename="org.eclipse.ui*.jar"/>

<includename="org.eclipse.jdt*.jar"/>

<includename="org.eclipse.core*.jar"/>

<includename="org.eclipse.equinox*.jar"/>

<includename="org.eclipse.debug*.jar"/>

<includename="org.eclipse.osgi*.jar"/>

<includename="org.eclipse.swt*.jar"/>

<include name="org.eclipse.jface*.jar"/>

<includename="org.eclipse.team.cvs.ssh2*.jar"/>

<includename="com.jcraft.jsch*.jar"/>

</fileset>

</path>

<!-- Override classpath to include EclipseSDK jars -->

<path id="classpath">

<pathelement location="${build.classes}"/>

<pathelementlocation="${hadoop.root}/build/classes"/>

<pathrefid="eclipse-sdk-jars"/>

<pathrefid="hadoop-jars"/> <!--这行为添加的内容-->

</path>

<!-- Skip building if eclipse.home isunset. -->

<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}">

<classpath refid="classpath"/>

</javac>

</target>

<!-- Override jar target to specifymanifest -->

<target name="jar"depends="compile" unless="skip.contrib">

<mkdirdir="${build.dir}/lib"/>

<!--这行为添加的内容-->

<copyfile="${hadoop.root}/hadoop-core-${version}.jar"tofile="${build.dir}/lib/hadoop-core-${version}.jar"verbose="true"/>

<!--这行为添加的内容-->

<!--

<copyfile="${hadoop.root}/build/ivy/lib/Hadoop/common/commons-cli-${commons-cli.version}.jar"  todir="${build.dir}/lib"verbose="true"/>

-->

<copyfile="${hadoop.root}/lib/commons-cli-1.2.jar"todir="${build.dir}/lib" verbose="true"/>

<copyfile="${hadoop.root}/lib/commons-lang-2.4.jar"todir="${build.dir}/lib" verbose="true"/>

<copyfile="${hadoop.root}/lib/commons-configuration-1.6.jar"todir="${build.dir}/lib" verbose="true"/>

<copyfile="${hadoop.root}/lib/jackson-mapper-asl-1.8.8.jar"todir="${build.dir}/lib" verbose="true"/>

<copyfile="${hadoop.root}/lib/jackson-core-asl-1.8.8.jar"todir="${build.dir}/lib" verbose="true"/>

<copyfile="${hadoop.root}/lib/commons-httpclient-3.0.1.jar"todir="${build.dir}/lib" 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>

Step5修改MANIFEST.MF

在Bundle-ClassPath添加下面的内容。

Bundle-ClassPath: classes/,

lib/hadoop-core.jar,

lib/commons-cli-1.2.jar,

lib/commons-httpclient-3.0.1.jar,

lib/jackson-core-asl-1.8.8.jar,

lib/jackson-mapper-asl-1.8.8.jar,

lib/commons-configuration-1.6.jar,

lib/commons-lang-2.4.jar

Step6Ant 编译1.右键 MapReduceTools 工程,Properties—>Builders—>New—>Ant Builder
2. 修改New_Builder编辑界面中的内容
Name (见名知意): plugin_Builder
Buildfile (build.xml的位置):D:\hadoop-1.2.1\src\contrib\eclipse-plugin\build.xml
3. 修改完成保存
4. 点击Project—>Build Project进行生成
点击Project—>Build Project开始进行生成,这时候我们会看到控制台输出一堆相关的编译信息,编译成功会看到在控制台输出 BUILD SUCCESSFUL 。编译结果在d:\hadoop-1.2.1\build\contrib\eclipse-plugin 目录下。

Step6查看编译成果

编译结果在 d:\hadoop-1.2.1\build\contrib\eclipse-plugin 目录下。我们可以看到在目录下生成了hadoop-eclipse-plugin-1.2.1.jar,这时如果我们需要安装插件到eclipse的话就需要将hadoop-eclipse-plugin-1.2.1.jar 放入 到eclipse的plugins 目录下,重启 eclipse即可。

时间: 2024-11-16 06:17:30

hadoop1.2 eclipse插件编译的相关文章

Hadoop-1.2.1 Eclipse插件编译

Eclipse开发过程连接Hadoop集群环境,需要安装Hadoop插件.Hadoop源码包中有Eclipse插件源代码,需要自己动手编译. 环境:Hadoop 1.2.1 & Eclipse Kepler & Windows 7 & JAVA 7 1.生成插件源码 解压Hadoop安装包,找到src\contrib\eclipse-plugin 2.修改配置 修改${HADOOP_HOME}/src/contrib/目录下的build-contrib.xml文件,增加两行: &l

Hadoop2.2.0 eclipse插件编译及Ecliipse配置说明(图文版)

一.引言: 最近在做一个城商行项目的POC测试it版本,涉及到编译Linux64bti的源码和开发插件使用,作为笔记分享给大家. 二.插件编译 Hadoop2x版本的Eclipse插件已经单独抽取成独立的开源项目,区别于之前版本直接集成到Hadoop1.x版本的模式,需要单独下载,下载网址: https://github.com/winghc/hadoop2x-eclipse-plugin 2.1 源码编译 1 hadoop2x-eclipse-plugin 2 ================

hadoop2.6.0的eclipse插件编译和设置

1.编译hadoop2.6.0的eclipse插件 下载源码: git clone https://github.com/winghc/hadoop2x-eclipse-plugin.git 编译源码: cd src/contrib/eclipse-plugin ant jar -Dversion=2.6.0 -Declipse.home=/opt/eclipse -Dhadoop.home=/opt/hadoop-2.6.0 eclipse.home 和 hadoop.home 设置成你自己的

Hadoop1.2.1插件编译

本文介绍了Hadoop 1.2.1插件的编译步骤及编译后插件的配置. 1. 将Haoop 1.2.1源文件hadoop-1.2.1.tar.gz解压到D:\hadoop-1.2.1 2. 将项目导入Eclipse 3. 将build-contrib.xml拷贝到项目下. 4. 修改build.xml 1). 指定build-contrib.xml路径 <import file="./build-contrib.xml"/> 2). 添加Hadoop相关包到classpath

使用Eclipse&Ant编译hadoop1.x的eclipse插件

注意:以下操作基于Hadoop-1.2.1,Eclipse Luna 1.将hadoop eclipse插件的工程导入Eclipse.插件源码目录如下: D:\Lab\lib\hadoop\hadoop-1.2.1\src\contrib\eclipse-plugin 2.配置工程依赖 3.准备ant的配置文件 D:\Lab\lib\hadoop\hadoop-1.2.1\src\contrib\build-contrib.xml 将以上build-contrib.xml拷贝到项目目录中,并修改

hadoop-1.2.1+eclipse+ubuntu插件编译小记

1.安装JDK和Ant,下载hadoop-1.2.1,hadoop-1.2.1的eclipse插件源码位于${hadoop.home}/src/contrib/eclipse-plugin. 2.将源码导入eclipse中.File->import->General->Existing Projects into Workspace->选择${hadoop.home}/src/contrib/eclipse-plugin 3.编译的时候会提示找不到类.将下面的fileset添加到c

使用Eclipse&Ant编译hadoop2.x的eclipse插件

注意:以下操作基于Hadoop-1.2.1,Eclipse Luna 1.下载插件源码包 https://github.com/winghc/hadoop2x-eclipse-plugin 2.新建eclisep java工程,将压缩包中以下目录的内容复制到project中 hadoop2x-eclipse-plugin-master.zip\hadoop2x-eclipse-plugin-master\src\contrib\eclipse-plugin 3.增加依赖库 其中hadoop-2.

Hadoop学习之编译eclipse插件

近期准备開始学习Hadoop1.2.1的源码,感觉最好的方法还是能够在运行Hadoop及hadoop作业时跟踪调试代码的实际运行情况.因为选择的IDE为eclipse,所以准备编译一下hadoop的eclipse插件,以下就直接进入正题.Hadoop的eclipse插件源码位于hadoop-1.2.1/src/contrib/eclipse-plugin/中,直接进入该文件夹,在不做不论什么改动的情况下,在命令行输入ant,运行效果例如以下: [[email protected] eclipse

Hadoop2 自己动手编译Hadoop的eclipse插件

前言:       毕业两年了,之前的工作一直没有接触过大数据的东西,对hadoop等比较陌生,所以最近开始学习了.对于我这样第一次学的人,过程还是充满了很多疑惑和不解的,不过我采取的策略是还是先让环境跑起来,然后在能用的基础上在多想想为什么.       通过这三个礼拜(基本上就是周六周日,其他时间都在加班啊T T)的探索,我目前主要完成的是: 1.在Linux环境中伪分布式部署hadoop(SSH免登陆),运行WordCount实例成功. http://www.cnblogs.com/Pur