hadoop :java.io.FileNotFoundException: File does not exist:

2023-11-12

点击打开链接转自:http://blog.163.com/silver9886@126/blog/static/35971862201441134010403/
1.用hadoop的eclipse插件下M/R程序的时候,有时候会报
Exception in thread "main" java.lang.IllegalArgumentException: Pathname /D:/hadoop/hadoop-2.2.0/hadoop-2.2.0/share/hadoop/mapreduce/hadoop-mapreduce-client-core-2.2.0.jar from hdfs://uat84:49100/D:/hadoop/hadoop-2.2.0/hadoop-2.2.0/share/hadoop/mapreduce/hadoop-mapreduce-client-core-2.2.0.jar is not a valid DFS filename
服务器下报错是:
[ 2014-05-11 19:09:40,019] ERROR [main] (UserGroupInformation.java:1494) org.apache.hadoop.security.UserGroupInformation - PriviledgedActionException as:hadoop (auth:SIMPLE) cause:java.io.FileNotFoundException: File does not exist: hdfs://uat84:49100/usr/local/bigdata/hbase/lib/hadoop-common-2.2.0.jar
Exception in thread "main" java.io.FileNotFoundException: File does not exist: hdfs://uat84:49100/usr/local/bigdata/hbase/lib/hadoop-common-2.2.0.jar
        at org.apache.hadoop.hdfs.DistributedFileSystem$17.doCall(DistributedFileSystem.java:1110)
        at org.apache.hadoop.hdfs.DistributedFileSystem$17.doCall(DistributedFileSystem.java:1102)
        at org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81)
        at org.apache.hadoop.hdfs.DistributedFileSystem.getFileStatus(DistributedFileSystem.java:1102)
        at org.apache.hadoop.mapreduce.filecache.ClientDistributedCacheManager.getFileStatus(ClientDistributedCacheManager.java:288)
        at org.apache.hadoop.mapreduce.filecache.ClientDistributedCacheManager.getFileStatus(ClientDistributedCacheMa
这是tm的什么fucking错误!!拿着别人正确的程序一点一点查,发现是因为有这句话:
Configuration conf = new Configuration();
conf.set("fs.default.name", "hdfs://uat84:49100");
这是什么意思呢,就是说,你如果是本地跑,就是不引入mapred-site,yarn-site,core-site这些配置文件,那么这个地方也不要设置,因为你是在本地跑M/R程序,( fs.default.name默认值是file:///,表示本地文件系统)这个地方却又告诉hadoop,需要的jar包从hdfs中取,当然会报以上的问题。那么,在本地跑直接去掉这句话就ok了。
反之,如果你是提交到集群,引入了mapred-site,yarn-site,却没有引入core-site,也没有设置fs.default.name,那么,因为不知道namenode的地址,无法将job.jar提交到hadoop集群上,因此会报如下错误:
[ 2014-05-13 16:35:03,625] INFO [main] (Job.java:1358) org.apache.hadoop.mapreduce.Job - Job job_1397132528617_2814 failed with state FAILED due to: Application application_1397132528617_2814 failed 2 times due to AM Container for appattempt_1397132528617_2814_000002 exited with  exitCode: -1000 due to: File file:/tmp/hadoop-yarn/staging/hadoop/.staging/job_1397132528617_2814/job.jar does not exist
.Failing this attempt.. Failing the application.
牛不牛!因此我们只要告诉hadoop我们的namenode地址就可以了。引入core-site或是设置
fs.default.name 都是一样的
2.在跑hdfs到hbase的代码的时候,报出如下错误:
java.lang.RuntimeException: java.lang.NoSuchMethodException: CopyOfHive2Hbase$Redcuer.<init>()
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:131)
at org.apache.hadoop.mapred.ReduceTask.runNewReducer(ReduceTask.java:629)
at org.apache.hadoop.mapred.ReduceTask.run(ReduceTask.java:405)
at org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:445)
Caused by: java.lang.NoSuchMethodException: CopyOfHive2Hbase$Redcuer.<init>()
at java.lang.Class.getConstructor0(Class.java:2715)
at java.lang.Class.getDeclaredConstructor(Class.java:1987)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:125)
... 3 more
fucking man啊,光看这个,谁能看出来Rducer哪里写的有问题!我服他了!!!
也是对比人家正确的代码,一点一点看,发现,原来是因为我的reduce方法不是static的!!!! hadoop 简单程序下的错误和陷阱 - silver9886@126 - silver9886@126的博客想死的心都有了
public static class Redcuer extends TableReducer<Text, Text, NullWritable> {  
private String[] columname ;
public void reduce(Text key, Iterable<Text> values, Context context) throws IOException, InterruptedException {  
System.out.println("!!!!!!!!!!!!!!!!!!!reduce!!!!!!!" + key.toString());
Put put = new Put(Bytes.toBytes("test1234"));
put.add(Bytes.toBytes("fc"), Bytes.toBytes("1"), Bytes.toBytes("2"));
    context.write(NullWritable.get(), put);
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

hadoop :java.io.FileNotFoundException: File does not exist: 的相关文章

  • vue3 + vite 在线预览docx, pdf, pptx(内外网)并实现移动端适配

    一 内网 1 docx 使用docx preview 安装插件 npm i docx preview S 引入依赖 docx import renderAsync from docx preview let docx import meta
  • GO终端读取

    GO终端读取 Go语言获取标准输入 Go语言 fmt 包下有 fmt Scan fmt Scanf fmt Scanln 三个函数 可以在程序运行过程中获取用户输入 func Scan a interface n int err error
  • Spring核心之一:IOC

    IOC Inversion of Control 其实是一种思想 这种思想并不是Spring独有的 而是在软件开发中 大家提出的一种开发原则 类似面向接口编程原则 开闭原则等 网上有很多类似的文章尝试去通俗易懂地解释IOC思想 这里我根据自
  • BugkuCTF-Crypto题小山丘的秘密

    本题考查希尔密码 解题流程 题目信息 1 根据提示知道是希尔 hill 密码 解密网站 www atoolbox net Tool php Id 914 ac csdn flag txt 里给出A 1 一般的希尔密码是A 0 B 1 C 2
  • Vue.js 学习笔记 第5章 内置指令

    本篇目录 5 1 基本指令 5 2 条件渲染指令 5 3 列表渲染指令 v for 5 4 方法与事件 5 5 实战 利用计算属性 指令等知识开发购物车 回顾一下第2 2节 我们己经介绍过指令 Directive 的概念了 Vue js的指
  • JAVA 【基础】 log4j 输出样式

    先了解一下log4j 的打印参数如下 参数 说明 L 输出代码中的行号 l 输出日志事件的发生位置 包括类目名 发生的线程 以及在代码中的行数 如 Testlog main TestLog java 10 m 输出代码中指定的消息 p 输出
  • 使用vs2013编译qt4库

    一 废话 由于项目需要搭建qt msvc2013的环境 而官方提供的qt4库最高只支持和vs2010关联 如果需要配置qt msvc2010只需要安装官方给的qt4库的安装包 然后下载addin就可以了 本人也是第一次搭建该环境 在网上找了
  • GDB 程序调试常用命令

    调试之前 若要在GDB中调试程序在编译时需要加上调试信息 在GCC中添加的方法 GCC g a c o a exe 或下面提供更符合GDB的调试信息 GCC ggdb a c o a exe 运行流程 命令 作用 start 开始执行程序
  • elasticsearch评分进阶

    elasticsearch 评分进阶 原文引用自 Advanced Scoring in elasticsearch 作者还有一篇Elasticsearch评分的经验说明 建议爬墙参考slideshare上的资源对照查看 如有侵权请联系 s
  • 几张架构图阐述微服务架构治理相关知识点

    微服务架构的技术点 超时时间设置 接口重试机制 流量QPS限流 请求熔断处理 请求降级处理 今天给大家分享一下以上相关的知识点 通过微服务系统之间RPC通信的方式 以架构图的形式给大家展开介绍 1 超时时间设置 应用访问业务系统A 业务系统
  • 程序员都要学学任正非的坚强!这个老头,在逆境中崛起!

    点赞再看 养成习惯 微信搜一搜 findyi 关注这个喜欢写情怀的程序员 回复 1 获得程序员职场晋升PPT一份 2019年的最后一天 罗胖在跨年演讲中引用了何帆老师的一句话 用一个人的长期主义 对冲世界的不确定性 那时候 谁也无法想到 世
  • 【STM32】为什么STM32的Flash地址要设置到0x08000000

    参考 不是问题的问题 为什么STM32的Flash地址要设置到0x08000000 这边涉及到分散加载文件 启动文件等等 先挖坑 搞定IAP升级以后再填 为什么STM32的Flash地址要设置到0x08000000 主flash启动时 是从
  • tomcat多系统部署方案

    多系统部署到一个 Tomcat 中 如果某一个系统崩溃可能会同时使其他系统不能正常工作 因为它们运行在同一个 JVM 上 就需要在同一个服务器中安装多个 Tomcat 来运行不同的 WEB 系统 一 Tomcat 版本选择 安装 JDK 版
  • 事件循环(Event Loop)

    目录 一 浏览器的进程模型 1 1 进程 1 2 线程 1 3 浏览器的进程和线程 二 渲染主线程 2 1 渲染主线程中为什么使用异步 2 2 js的异步 2 3 队列的优先级 添加任务到微队列的主要 式主要是使 Promise NextT
  • 板材眼镜大小调整方法

    http v youku com v show id XNTY0NjUwOTU2 html
  • ROS 2正式版来了,到底有哪些新变化?

    锋影 email 174176320 qq com 如果你认为本系列文章对你有所帮助 请大家有钱的捧个钱场 点击此处赞助 赞助额0 1元起步 多少随意 2017 12 09 机器人开源操作系统软件ROS 2终于推出首个正式版 新版本命名为

随机推荐

  • openGL之API学习(一零三)glGetActiveUniform

    获取活跃一致变量的信息 变量可以在程序执行期间被访问 则该变量被认为是活动的 void glGetActiveUniform GLuint program GLuint index GLsizei bufSize GLsizei lengt
  • 微信小程序唤起键盘页面溢出的解决方案

    文章目录 背景 解决方案 效果 背景 微信小程序的 input 组件 如果使用自带的adjust position会引起除了 input 元素的其他元素一并上移 解决方案 首先获取到屏幕的高度screenHeight 确定好每个元素所占的大
  • 静态代码分析工具清单:开源篇(多语言)

    http hao jobbole com static code analysis tool list opensource utm source hao jobbole com utm medium relatedResources 静态
  • 百度地图入门

    百度地图官网百度api 进入官网选择javascript API 里面有详细的教程 跟着教程先登录注册一个个人开发账号 并创建一个应用获取ak 创建时js需要填白名单 如果是在本地运行填写localhost就好了 当你在控制台看到这个界面是
  • eclipse双击变量高亮显示开关

    eclipse双击变量高亮显示开关 在eclipse myeclipse中如果不小心把变量的高亮显示弄丢了 可真是件愁人的事 不过看到这你就不用愁了 windows gt preferences gt java gt Editor gt M
  • Springboot读取jar下的文件(在springboot打包成jar后)

    关于取web jar中的配置数据 以及存储下载的数据临时目录 按如下方法处理 均已测试验证过 1 更新了文件路径问题 所有的初始化数据Jason直接从reasource目录的mockdata里读 2 所有下载的数据 放到web jar同一级
  • C语言学习———函数

    目录 编辑 1 函数的概念 2 函数的分类 3 库函数是什么 3 1库函数的查找学习方法 3 2库函数的分类 4 自定义函数 4 1形参与实参 4 2传值与传址调用 4 3总结一句 5 函数的嵌套定义与链式访问 5 1嵌套定义 5 2链式访
  • 什么是智能合约? 智能合约到底做什么的?

    Solidity Solidity是一种用于编写智能合约的高级语言 语法类似于JavaScript 在以太坊平台上 Solidity编写的智能合约可以被编译成字节码在以太坊虚拟机上运行 使用Solidity语言编写智能合约避免了直接编写底层
  • thinkphp5学习路程 二 URL访问路径

    URL访问路径 localhost studytp1 public index php 模块 控制器 操作名 参数名 参数值 默认情况下URL是不区分大小写的 自动转换成小写 如果要区分 就要打开配置文件中的 关闭URL中控制器和操作名的自
  • 计算机网络一到六章知识点

    一 概述 1 1互联网的基本特性 连通性 互联网上用户不管距离多远 都能通信 就像这些用户终端都彼此连通 共享性 所谓共享就是指资源共享 资源共享 包含信息 软件 硬件等共享 就像资源在用户身边 1 2 因特网 互联网 概述 1 网络的网络
  • 在小程序开发中使用 npm

    微信小程序在 2 2 1 版本后增加了对 npm 包加载的支持 使得小程序支持使用 npm 安装第三方包 1 在小程序中加载 npm 包 npm install miniprogram datepicker production node
  • 数组查找操作:寻找第二大

    一 找出数组中第二大的数字 public class Main public static void main String args int max 0 int smax 0 int arr 1 2 3 4 6 8 7 if arr 0
  • 解决bash: mysql: command not found 的方法【linux mysql命令 】

    linux下 在mysql正常运行的情况下 输入mysql提示 mysql command not found 遇上 bash mysql command not found的情况别着急 这个是因为 usr local bin目录下缺失my
  • C#使用欧姆龙PLC的Fins协议读写PLC地址(基本封装)

    FINS通讯概述 FINS factory interface network service 通信协议是欧姆龙公司开发的用于工业自动化控制网络的指令 响应系统 运用 FINS指令可实现各种网络间的无缝通信 通过编程发送FINS指令 上位机
  • Unity中用到的数学知识 整理 (为自己)

    缓动数学知识 转自 http easings net en CSS CSS properties transition and animation allow you to pick the easing function Unfortun
  • Spring两大特性:IOC和AOP

    Spring拥有两大特性 IOC 控制反转 AOP 面向切面编程 Spring注解 Spring为我们提供了多个方便的注解 例如 Controller 标明为控制层组件 Service 服务层组件 Repository DAO层 Compo
  • openssl hmac源码分析

    hmac 原理 HMAC 用于保护消息的完整性 它采用摘要算法对消息 填充以及秘密密钥进行混合 运算 在消息传输时 用户不仅传送消息本身 还传送 HMAC 值 接收方接收数据后也进 行 HMAC 运算 再比对 MAC 值是否一致 由于秘密密
  • 【ORACLE】ora-12519错误分析解决

    首先检查process和session的使用情况 在sqlplus里面查看 SQL gt show parameter processes NAME TYPE VALUE aq tm processes integer 0 db write
  • gdb常用的调试方法

    1 安装gdb yum install gdb 2 打印线程的堆栈 1 ps afx 查看进程id 2 attach 正在运行的进程 gdb debugme pid 3 set logging file tmp test txt 设置操作g
  • hadoop :java.io.FileNotFoundException: File does not exist:

    点击打开链接转自 http blog 163 com silver9886 126 blog static 35971862201441134010403 1 用hadoop的eclipse插件下M R程序的时候 有时候会报 Excepti