CentOS下用Eclipse和命令行方式编译运行WordCount程序

安装Eclipse

一、下载Eclipse软件

二、安装Eclipse软件

三、安装Eclipse插件 Hadoop-Eclipse-Plugin

四、配置 Hadoop-Eclipse-Plugin

WordCount程序

一、在eclipse中写个WordCount吧

1.建立项目

2.在项目里面建立WordCount类

3.写入代码

4.通过 Eclipse 运行 MapReduce

二、命令行运行WordCount:

1、添加一个环境变量

2、编译程序

3、把 .class 文件打包成 jar:/p>

4、试图运行jar文件

4.1如果 错了,就这样解决

5、创建几个输入文件

6、将本地的文件put到hdfs文件系统(注意上面运行jar包 错哪儿需要什么位置就建立在什么位置,这个由保存项目的位置有关)

7、运行jar文件,分析成功

7.1运行时可能 错的情况和解决方法

8、查看输出文件

附录:解决错误记录

1、安装完Hadoop之后,命令行输入hadoop却找不到命令的解决方法

2、出现以下异常:Permission denied: user=administrator, access=WRITE, inode=”/”:root:supergroup:drwxr-xr-x

3、 错Name node is in safe mode的解决方法

4、hadoop上传文件错误org.apache.hadoop.ipc.RemoteException(java.io.IOException)


  • 环境:

CentOS7;Hadoop2.7.6,伪分布式配置

备注:文章最后总结了本人在完成该实验遇到的错误,若在操作过程中遇到一些 错,可在最后查看。

  • 安装Eclipse

一、下载Eclipse软件

下载地址:http://www.eclipse.org/downloads/packages/release/Luna/SR2

下载与操作系统版本对应的Eclipse软件,比如操作系统是64位的,则Eclipse软件也必须是64位的,也就是需要下载:eclipse-jee-luna-SR2-linux-gtk-x86_64.tar.gz

二、安装Eclipse软件

  1. 将eclipse上传(安装了虚拟机工具之后可直接从真机中复制文件到虚拟机)到CentOs上去,我这里放到了/home/eclipse下。或者直接在虚拟机里面下载eclipse。
  2. 移动安装包到/opt目录中:mv /home/eclipse/eclipse-jee-luna-SR2-linux-gtk-x86_64.tar.gz  /opt
  3. 解压缩包:tar -zxvf eclipse-jee-luna-SR2-linux-gtk-x86_64.tar.gz
  4. 创建eclipse的快捷方式:

添加如下内容:

Exec根据eclipse解压具体位置而定;Icon为eclipse图标(如果有的话);Name为快捷键名称;
然后保存,打开 应用程序 》编程 就会发现eclipse的图标了。

三、安装Eclipse插件 Hadoop-Eclipse-Plugin

要在 Eclipse 上编译和运行 MapReduce 程序,需要安装 hadoop-eclipse-plugin,可下载 Github 上的 hadoop2x-eclipse-plugin(备用下载地址:http://pan.baidu.com/s/1i4ikIoP)。

下载后,将 release 中的 hadoop-eclipse-kepler-plugin-2.4.1.jar (还提供了 2.2.0 和2.6.0 版本)复制到 Eclipse 安装目录的 plugins 文件夹中,还是像上面复制eclipse到虚拟机里面一样,我是从到 /home/admin/usr/java 目录下复制到Eclipse 安装目录。(若遇到权限问题,请切换到root权限下操作)

运行 eclipse -clean 重启 Eclipse 即可(添加插件后只需要运行一次该命令,以后按照正常方式启动就行了)。

四、配置 Hadoop-Eclipse-Plugin

在继续配置前请确保已经开启了 Hadoop

启动 Eclipse 后就可以在左侧的Project Explorer中看到 DFS Locations(若看到的是 welcome 界面,点击左上角的 x 关闭就可以看到了。)

安装好Hadoop-Eclipse-Plugin插件后的效果

配置过程:

1.打开Preference

2.选择 Hadoop 的安装目录(如果没有出现1,可能是插件版本不对。看下eclipse版本再确定用什么版本的插件)然后确定

3.切换 Map/Reduce 开发视图,选择 Window 菜单下选择 Open Perspective ,弹出一个窗体,从中选择 Map/Reduce 选项即可进行切换。

4.建立与 Hadoop 集群的连接,点击 Eclipse软件右下角的 Map/Reduce Locations 面板,在面板中单击右键,选择 New Hadoop Location

在弹出来的 General 选项面板中,General 的设置要与 Hadoop 的配置一致。一般两个 Host 值是一样的,如果是伪分布式,填写 localhost 即可,另外我使用的Hadoop伪分布式配置,设置 fs.defaultFS hdfs://localhost:9000,则 DFS Master Port 要改为 9000Map/Reduce(V2) Master Port 用默认的即可,Location Name 随意填写。

Advanced parameters 选项面板是对 Hadoop 参数进行配置,实际上就是填写 Hadoop 的配置项(/usr/local/hadoop/etc/hadoop中的配置文件),如我配置了 hadoop.tmp.dir ,就要进行相应的修改。但修改起来会比较繁琐,我们可以通过复制配置文件的方式解决。总之,我们只要配置 General 就行了,点击 finish,Map/Reduce Location 就创建好了。

一般情况格式化后文件系统里面是空的,右键点击可以上传、下载、删除 HDFS 中的文件,双击可以查看内容,无需再通过繁琐的 hdfs dfs -ls 等命令进行操作了。


  • WordCount程序

一、在eclipse中写个WordCount吧

1.建立项目

2.在项目里面建立WordCount类

3.写入代码

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年5月6日
下一篇 2019年5月6日

相关推荐