纵有疾风起
人生不言弃

eclipse hadoop1.2.0配置及wordcount运行

"error: failure to login"问题

http://www.cnblogs.com/xia520pi/archive/2012/05/20/2510723.html

DFS Locations

本人这次的编译环境是linuxmint15 64bit,与上文的编译环境win2003不同了

首先要配置linux的jdk 1.6.0_45、ant 1.9.1以及相关环境变量,这部分内容本文就不再赘述了

然后需要下载eclipse和hadoop的源码包,本人下载的eclipse版本是Eclipse Classic 4.2.2 ,下载地址Eclipse Classic 4.2.2

hadoop版本为1.2.0,源码包下载地址 hadoop-1.2.0.tar.gz

与上文比较类似,修改${hadoop.root}/src/contrib目录的build-contrib.xml文件,添加eclipse路径和hadoop版本信息(/home/chenying/program/eclipse为我的eclipse路径)

 <property name="eclipse.home" location="/home/chenying/program/eclipse" />    <property name="version" value="1.2.0"/>

修改javac.deprecation属性

<property name="javac.deprecation" value="on"/>

修改${hadoop.root}/src/contrib/eclipse-plugin目录下的build.xml文件,在id为classpath的path节点添加hadoop-core的jar依赖

复制代码
<!-- Override classpath to include Eclipse SDK jars -->  <path id="classpath">    <pathelement location="${build.classes}"/>    <pathelement location="${hadoop.root}/build/classes"/>    <!--hadoop-core -->        <pathelement location="${hadoop.root}/hadoop-core-${version}.jar"/>    <path refid="eclipse-sdk-jars"/>  </path>
复制代码

找到name为jar的target,将相应的jar文件打包进插件的lib目录

复制代码
<!-- 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"  todir="${build.dir}/lib" verbose="true"/>    <!-- 将以下jar包打进hadoop-eclipse-1.1.2.jar中 -->         <copy file="${hadoop.root}/lib/commons-lang-2.4.jar"  todir="${build.dir}/lib" verbose="true"/>      <copy file="${hadoop.root}/lib/commons-configuration-1.6.jar"  todir="${build.dir}/lib" verbose="true"/>      <copy file="${hadoop.root}/lib/jackson-mapper-asl-1.8.8.jar"  todir="${build.dir}/lib" verbose="true"/>      <copy file="${hadoop.root}/lib/jackson-core-asl-1.8.8.jar"  todir="${build.dir}/lib" verbose="true"/>      <copy file="${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>
复制代码

修改MANIFEST.MF文件里面Bundle-ClassPath属性值

Bundle-ClassPath: classes/,lib/hadoop-core.jar,lib/commons-cli-1.2.jar,lib/commons-configuration-1.6.jar,lib/commons-httpclient-3.0.1.jar,lib/commons-lang-2.4.jar,lib/jackson-core-asl-1.8.8.jar,lib/jackson-mapper-asl-1.8.8.jar

在命令行进入 ${hadoop.root}/src/contrib/eclipse-plugin目录,输入ant命令

eclipse hadoop1.2.0配置及wordcount运行插图1

最后在${hadoop.root}/build/contrib/eclipse-plugin目录生成打包好的插件,将hadoop-eclipse-plugin-1.2.0.jar文件复制到eclipse的plugins目录即可

插件下载地址 hadoop-eclipse-plugin-1.2.0.jar

—————————————————————————

本系列Hadoop1.2.0开发笔记系本人原创

转载请注明出处 博客园 刺猬的温驯

本文链接 http://www.cnblogs.com/chenying99/archive/2013/05/31/3109566.html

2.重启eclipse,配置hadoop installation directory。
如果安装插件成功,打开Window–>Preferens,你会发现Hadoop Map/Reduce选项,在这个选项里你需要配置Hadoop installation directory。配置完成后退出。

eclipse hadoop1.2.0配置及wordcount运行插图2

3.配置Map/Reduce Locations。
在Window–>Show View中打开Map/Reduce Locations。
在Map/Reduce Locations中新建一个Hadoop Location。在这个View中,右键–>New Hadoop Location。在弹出的对话框中你需要配置Location name,如Hadoop,还有Map/Reduce Master和DFS Master。这里面的Host、Port分别为你在mapred-site.xml、core-site.xml中配置的地址及端口。如:

Map/Reduce Master

192.168.1.1019001

DFS Master

192.168.1.1019000

eclipse hadoop1.2.0配置及wordcount运行插图3

配置完后退出。点击DFS Locations–>Hadoop如果能显示文件夹(2)说明配置正确,如果显示"拒绝连接",请检查你的配置。

eclipse hadoop1.2.0配置及wordcount运行插图4

第三步:新建项目。
File–>New–>Other–>Map/Reduce Project
项目名可以随便取,如WordCount。
复制 hadoop安装目录/src/example/org/apache/hadoop/example/WordCount.java到刚才新建的项目下面。

第四步:上传模拟数据文件夹。
为了运行程序,我们需要一个输入的文件夹,和输出的文件夹。
在本地新建word.txt

java c++ python cjava c++ javascript helloworld hadoopmapreduce java hadoop hbase 

通过hadoop的命令在HDFS上创建/tmp/workcount目录,命令如下:bin/hadoop fs -mkdir /tmp/wordcount

通过copyFromLocal命令把本地的word.txt复制到HDFS上,命令如下:bin/hadoop fs -copyFromLocal /home/grid/word.txt  /tmp/wordcount/word.txt

第五步:运行项目

1.在新建的项目Hadoop,点击WordCount.java,右键–>Run As–>Run Configurations
2.在弹出的Run Configurations对话框中,点Java Application,右键–>New,这时会新建一个application名为WordCount
3.配置运行参数,点Arguments,在Program arguments中输入“你要传给程序的输入文件夹和你要求程序将计算结果保存的文件夹”,如:

hdfs://centos1:9000/tmp/wordcount/word.txt   hdfs://centos1:9000/tmp/wordcount/out

4、如果运行时报java.lang.OutOfMemoryError: Java heap space 配置VM arguments(在Program arguments下)

-Xms512m -Xmx1024m -XX:MaxPermSize=256m

eclipse hadoop1.2.0配置及wordcount运行插图5

5.点击Run,运行程序。

点击Run,运行程序,过段时间将运行完成,等运行结束后,查看运行结果,使用命令: bin/hadoop fs -ls /tmp/wordcount/out查看例子的输出结果,发现有两个文件夹和一个文件,使用命令查看part-r-00000文件, bin/hadoop fs -cat /tmp/wordcount/out/part-r-00000可以查看运行结果。

复制代码
c    1c++    2hadoop    2hbase    1helloworld    1java    3javascript    1mapreduce    1python    1
复制代码

文章转载于:https://www.cnblogs.com/kxdblog/p/4034259.html

原著是一个有趣的人,若有侵权,请通知删除

未经允许不得转载:起风网 » eclipse hadoop1.2.0配置及wordcount运行
分享到: 生成海报

评论 抢沙发

评论前必须登录!

立即登录