Error: java.io.IOException: Initialization of all the collectors failed. Error in last collector was :interface javax.xml.soap.Text

Initialization of all the collectors failed  : 初始化所有收集器失败


2016-03-12 20:08:46,874 WARN org.apache.hadoop.hdfs.DFSClient: DataStreamer Exception: org.apache.hadoop.ipc.RemoteException: java.io.IOException: File /tmp/hadoop-root/mapred/system/jobtracker.info could only be replicated to 0 nodes, instead of 1  : dfsclient:数据流 ,远程异常:只能复制到0个节点,而不是1


Caused by: java.lang.ClassCastException: interface javax.xml.soap.Text  :

在运行mapreduce作业时报这个异常

这个异常的大概意思是不认识Text

检查源代码,最后发现在一个类中没有导入import org.apache.hadoop.io.Text;

而是import com.sun.xml.internal.ws.policy.privateutil.PolicyUtils.Text;(这个貌似是在用IDE的提示功能时点错了。。。)


端口冲突----

查看进程-----

ps -ef |grep java

杀死所有-----

kill -9  ...


Failed to set setXIncludeAware(true) for parser

遇到此问题通常是jar包冲突的问题。

一种情况是我们向java的lib文件夹加入我们自己的jar包导致hadoop引用jar包的冲突。解决方式就是删除我们自己向系统加入的jar包,又一次配置。将自己的jar包或者外部jar放入系统文件夹会在编译程序时带来方便,可是这不是一种好习惯,我们应该通过改动CLASSPATH的方式指定jar包路径。


  • Cannot lock storage /tmp/hadoop-root/dfs/name. The directory isalready locked

这个错误通常是我们在某次配置失败后。hadoop创建该文件夹,锁定之后失败退出造成的。解决方式就是删除tmp文件夹下hadoop创建的相关文件夹。然后又一次配置。


  • ls: Cannot access .: No such file or directory.

当在hadoop中执行ls命令时常会出现这个错误,这个错误是指hdfs文件系统中当前文件夹为空,并非指本地文件系统中当前文件夹为空。当我们使用hdfs文件系统时,会默认进入/user/username下,这个文件夹不存在于本地文件系统,而是由hdfs内部管理的一个文件夹。

当我们第一次使用ls命令时,/user/username下是空的。所以会提示上述错误。当我们加入新的文件之后就不再报该错。


  • Call to localhost/127.0.0.1:9000 failed on connection exception

当在伪分布式环境下执行wordcount演示样例时,假设报上述错误说明未启动hadoop,利用start-all.sh脚本启动hadoop环境。


  • jps命令没有datanode执行

一个原因是执行文件系统格式化时,会在namenode数据文件夹中保存一个current/VERSION文件,记录namespaceID,标识了所格式化的namenode的版本号。

假设我们频繁的格式化namenode。那么datanode中保存的current/VERSION文件仅仅是你第一次格式化时保存的namenode的ID,因此就会造成datanode与namenode之间的id不一致。

解决方式是清空hadoop的tmp文件,重新启动格式化hdfs。 
Retrying connect to server: localhost/127.0.0.1:9000 
说明hadoop的namenode进程没有启动,导致与namenode无法连接而报错。能够先执行stop-all.sh脚本停止hadoop,然后调用start-all.sh重新启动hadoop。


将写好的jar包,放到linux上后,执行hadoop jar hadoopTest.jar test.XXXCount  input output 后,

运行时,会报下面的警告

WARN mapred.JobClient: No job jar file set.

User classes may not be found. See JobConf(Class)or JobConf#setJar(String).
之后就会报错:
java.lang.RuntimeException: java.lang.ClassNotFoundException: xxxxMapper
解决:-----(加上job.setJarByClass(WordCount.class之后还是运行不对);

在Configuration里加上配置,将需要用到的jar通过配置加进来:conf.set("mapred.jar", "/home/test/hadoopTest.jar");


hadoop执行 报错的更多相关文章

  1. 用java运行Hadoop程序报错:org.apache.hadoop.fs.LocalFileSystem cannot be cast to org.apache.

    用java运行Hadoop例程报错:org.apache.hadoop.fs.LocalFileSystem cannot be cast to org.apache.所写代码如下: package ...

  2. hadoop命令报错:权限问题

    root用户执行hadoop命令报错: [root@vmocdp125 conf]# hadoop fs -ls /user/ [INFO] 17:50:42 main [RetryInvocatio ...

  3. hadoop启动报错处理

    1.      hadoop启动报错 1.1.    问题1 util.NativeCodeLoader: Unable to load native-hadoop library for your ...

  4. oracle创建包后执行报错:object omgmig.test_package is invalid.

    今天学习了一下oracle的包的写法,然后碰到这么个问题.包声明和包主体都正确,但是就是执行报错:object omgmig.test_package is invalid. 这是会报错的sql,看起 ...

  5. salt执行报错一例

    执行报错: 查看服务端日志: 认证有问题 重新认证吧!!! minion端: [root@super66 ~]# cd /etc/salt/[root@super66 salt]# lsminion ...

  6. eclipse运行hadoop程序报错:Connection refused: no further information

    eclipse运行hadoop程序报错:Connection refused: no further information log4j:WARN No appenders could be foun ...

  7. Ubuntu下sh *.sh使用==操作符执行报错

    ----<鸟哥的Linux私房菜--基础篇>学习笔记 ubuntu默认的sh是连接到dash,而我们写shell脚本时使用的时bash.bash和dash在一些方面是不兼容的.因此执行同一 ...

  8. windows中修改catalina.sh上传到linux执行报错This file is needed to run this program解决

    windows中修改catalina.sh上传到linux执行报错This file is needed to run this program解决 一.发现问题 由于tomcat内存溢出,在wind ...

  9. Maven引入Hadoop依赖报错:Missing artifact jdk.tools:jdk.tools:jar:1.6

    Maven引入Hadoop依赖报错:Missing artifact jdk.tools:jdk.tools:jar:1.6 原因是缺少tools.jar的依赖,tools.jar在jdk的安装目录中 ...

随机推荐

  1. ffmpeg安装步骤

    首先要安装各种解码器 1.lame lame-3.99.5.tar.gz Url:http://sourceforge.net/project/showfiles.php?group_id=290&a ...

  2. phpunit assert断言分类整理

    布尔类型 方法名 含义 参数 返回值 assertTrue 断言为真     assertFalse 断言为假     NULL类型 方法名 含义 参数 返回值 assertNull 断言为NULL ...

  3. Java编程的逻辑 (93) - 函数式数据处理 (下)

    本系列文章经补充和完善,已修订整理成书<Java编程的逻辑>,由机械工业出版社华章分社出版,于2018年1月上市热销,读者好评如潮!各大网店和书店有售,欢迎购买,京东自营链接:http:/ ...

  4. 解决vscode无法安装golang相关插件的问题 - 即无法直连golang.org的问题

    喜欢挂vpn或者代理的请无视本文. 其实golang.org上的插件在github.com上都有镜像,直接 git clone https://github.com/golang/tools git ...

  5. [译] 理解 LSTM(Long Short-Term Memory, LSTM) 网络

    本文译自 Christopher Olah 的博文 Recurrent Neural Networks 人类并不是每时每刻都从一片空白的大脑开始他们的思考.在你阅读这篇文章时候,你都是基于自己已经拥有 ...

  6. java web (sevlet)请求之get,post,forward,redirect

    [参考]web请求之get,post,forward,redirect 1,form表单:可以采用post或者get请求,客户端主动跳转,url地址会改变为提交后的地址 2,forward:forwa ...

  7. javascript转义unicode十六进制编码且带有反斜杠后的html

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. Python sqlite3操作笔记

    创建数据库 def create_tables(dbname): conn = sqlite3.connect(dbname) print "Opened database successf ...

  9. pymysql操作mysql

    一.使用PyMySQL操作mysql数据库 适用环境 python版本 >=2.6或3.3 mysql版本>=4.1 安装 可以使用pip安装也可以手动下载安装.使用pip安装,在命令行执 ...

  10. JavaSE assert断言的学习

    在Java中,assert关键字是从JAVA SE 1.4 引入的,为了避免和老版本的Java代码中使用了assert关键字导致错误,Java在执行的时候默认是不启动断言检查的(这个时候,所有的断言语 ...