先上错误:
14/06/27 23:37:32 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 14/06/27 23:37:32 ERROR security.UserGroupInformation: PriviledgedActionException as:Administrator cause:java.io.IOException: Failed to set permissions of path: \tmp\hadoop-Administrator\mapred\staging\Administrator-519341271\.staging to 0700 Exception in thread "main" java.io.IOException: Failed to set permissions of path: \tmp\hadoop-Administrator\mapred\staging\Administrator-519341271\.staging to 0700 at org.apache.hadoop.fs.FileUtil.checkReturnValue(FileUtil.java:682) at org.apache.hadoop.fs.FileUtil.setPermission(FileUtil.java:655) at org.apache.hadoop.fs.RawLocalFileSystem.setPermission(RawLocalFileSystem.java:509) at org.apache.hadoop.fs.RawLocalFileSystem.mkdirs(RawLocalFileSystem.java:344) at org.apache.hadoop.fs.FilterFileSystem.mkdirs(FilterFileSystem.java:189) at org.apache.hadoop.mapreduce.JobSubmissionFiles.getStagingDir(JobSubmissionFiles.java:116) at org.apache.hadoop.mapred.JobClient$2.run(JobClient.java:856) at org.apache.hadoop.mapred.JobClient$2.run(JobClient.java:850) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:396) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1093) at org.apache.hadoop.mapred.JobClient.submitJobInternal(JobClient.java:850) at org.apache.hadoop.mapreduce.Job.submit(Job.java:500) at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:530) at com.hadoop.learn.test.WordCountTest.main(WordCountTest.java:85)
一看到这个错误,对于第一次接触的新手来说傻眼了,跑的第一个map/reduc程序就这样,后面百度了很 多。问了很多大神,知道这是在windows下面跑的原因(用的是虚拟机搭建的环境),如果是在linux下面 跑的话就不会出现这个错误,后面试了很多种方法,只有下面这一种感觉是最简单的,而且是成功了。贴出 来,大家一起学习。
注意: 以下修改的地方均是在eclipse的菜单栏windows下面的preferences的Hadoop Map/Reduce
Hadoop installation directory 关联到的windows下面新建的一个文件夹(里面放的是在linux下面安装 的hadoop文件)进行修改(语文有点差,不知道表达清楚了没有):
解决方法是,修改/hadoop-1.0.2/src/core/org/apache/hadoop/fs/FileUtil.java里面的checkReturnValue,注释掉即可:
12345678910111213 |
......
private static void checkReturnValue(boolean rv, File p,
FsPermission permission
) throws IOException {
/**
if (!rv) {
throw new IOException("Failed to set permissions of path: " + p +
" to " +
String.format("%04o", permission.toShort()));
}
**/
}
......
|
view rawFileUtil.java hosted with ❤ by GitHub
重新编译打包hadoop-core-1.0.2.jar,替换掉hadoop-1.0.2根目录下的hadoop-core-1.0.2.jar即可。
这里提供一份修改版的hadoop-core-1.0.2-modified.jar文件,替换原hadoop-core-1.0.2.jar即可。
替换之后,刷新项目,设置好正确的jar包依赖,现在再运行WordCountTest,即可。
成功之后,在Eclipse下刷新HDFS目录,可以看到生成了ouput_tms目录:
控制台输出下面的东西,和linux下面跑jar包是一样的效果:
好了,可以了,第一个手敲mapreduce程序终于可以跑起来了,继续干!!!
相关推荐
适合新手,详细 01-Java环境安装 02- Eclipse下载与安装 03-VMware虚拟机的安装 04-在VMware中安装CentOS 05- Hadoop集群+ Hive+ MySQL搭建
### CentOS7 下安装 Eclipse 并编译 Hadoop2.x 的详细步骤 #### 一、准备工作:安装 CentOS7 为了在 CentOS7 操作系统下搭建 Hadoop2.x 的编译环境,我们首先需要通过 VMware 虚拟机安装 CentOS7。 **步骤如下:*...
【标题】: "VM虚拟机下配Eclipse+JDK+Tomcat+Hadoop环境搭建" 在搭建基于VM虚拟机的开发环境时,通常需要安装一系列的软件来支持开发和运行Java应用程序,以及处理分布式计算任务。以下是详细的步骤: 1. **安装...
以上步骤完成后,你将在VMware虚拟机的CentOS环境中拥有一个完整的开发环境,包括Eclipse IDE用于编写Java代码,JDK用于编译和运行Java程序,Tomcat用于部署和测试Web应用,以及Hadoop用于处理大数据任务。...
【标题】"Centos64位Linux版本的eclipse"涉及了几个重要的IT知识点,包括Eclipse IDE、Linux操作系统(特别是CentOS发行版)以及与Java开发和Hadoop相关的工具和环境配置。 首先,Eclipse是一款广泛使用的开源集成...
### 安装Hadoop与Spark的关键知识点 #### Hadoop与Spark概述 - **Hadoop**:是一个能够对大量数据进行分布式处理的软件框架。它主要包括HDFS(Hadoop Distributed File System)和MapReduce两个核心组件。HDFS用于...
8. **Eclipse集成开发环境**:可能使用Eclipse进行Hadoop程序的开发和调试,这需要熟悉Eclipse的项目配置和Hadoop相关的插件。 实验报告撰写需注意以下几点: - 报告应该清晰、整洁,语言表达准确。 - 数据和程序...
标签“hadoop”则意味着这个Eclipse安装可能包含了Hadoop相关的插件或支持,Hadoop是一个开源的分布式计算框架,主要用于大数据处理。开发者可以使用Eclipse集成的Hadoop工具来编写MapReduce程序,管理HDFS文件,...
通常,个人学习会选择在虚拟机上安装,这里推荐使用VMware Workstation,并且安装CentOS7操作系统。安装虚拟机过程中,可以通过复制已有虚拟机的方式来创建多个节点,以节省时间,但需对每个虚拟机的IP地址和主机名...
首先,安装Eclipse的Hadoop插件,如Hadoop-Eclipse-Plugin,然后配置Hadoop的远程运行环境,指向你的Hadoop集群。 **WordCount示例** WordCount是Hadoop的入门示例,用于统计文本中单词出现的次数。主要包含两个...
在Windows下eclipse运行java程序,报错原因是没有添加正确的库,这是hadoop-2.8.4 所需... 在Windows的eclipse运行java程序,调试无报错,打包成jar,上传到linux虚拟机(CentOS 64位),Hadoop2.8.4上进行分布式运算。
在搭建Hadoop大数据处理环境的过程中,首先要确保你的操作系统是Linux,因为Hadoop主要在Linux环境下运行。本教程以VMware Workstation为基础,安装CentOS7作为虚拟机环境。VMware的NAT模式使得虚拟机能够通过物理...
搭建Hadoop大数据处理环境涉及到多个步骤,包括安装和配置Linux操作系统、设置网络环境、安装Java、配置SSH、安装时间服务器以及部署HTTPD服务。以下是对这些知识点的详细说明: 1. **Linux基础**: - CentOS7是...
Eclipse是一个流行的Java集成开发环境,可以安装Hadoop相关的插件,如Hadoop-Eclipse Plugin,以便于直接在Eclipse中创建、调试和运行MapReduce任务。 实验环境为CentOS 6.5操作系统和Hadoop 2.5.2版本。在进行实验...
- 下载`Hadoop-eclipse-Plugin-2.5.2.jar`插件,并将其放置在MyEclipse安装目录下的`plugins`文件夹内。 - 重启MyEclipse后,在“Project Explorer”窗口中可以看到新增的“DFS Locations”项,表明插件已成功加载...
2. 安装CentOs7 3 四、 基础环境搭建(hadoop用户下) 7 1. 机器名HostName 7 2. 关闭防火墙 7 3. 系统更新及常用工具安装 8 4. IP配置 8 5. JDK安装 9 五、 Hadoop安装及配置 10 1. 安装 10 2. 配置 10 ...
- **VirtualBox-5.1**:虚拟机软件,用于安装CentOS操作系统。 - **CentOS7**:操作系统,作为集群节点的操作系统。 - **Hadoop3.0**:分布式计算框架,为Spark提供底层支持。 - **JDK8**:Java开发工具包,Hadoop和...
### 大数据操作中的Hadoop免密登录与字母统计案例详解 #### 一、Hadoop集群的搭建 在大数据处理领域,Hadoop是一款非常重要的工具,它能够支持大规模数据的分布式存储与处理。本文将详细介绍如何搭建Hadoop集群,...
在CentOS7环境下,MySQL社区版是开源且免费的数据库管理系统,广泛应用于各种大小的应用场景,包括Web开发、数据分析、教育和企业级项目。安装了MySQL社区版后,可以通过配置相应的连接参数(如服务器地址、端口、...