问题的根源在于,工程当中maven dependencies里面的包,有个hadoop-core的包,版本太低,这样,程序里面所有引用到org.apache.hadoop的地方,都是低版本的,你用的是maven3的话,默认是hadoop-core-1.2.1.jar,这个就是那个“ipc client version4”, 而一般情况下你的电脑里运行的hadoop都是2.x,显然版本不对,于是我就想办法修改这个,但是maven装上之后就不能随便改里面的包,折腾半天之后,发现只能通过工程的pom.xml文件来改,在这个里面改了之后,maven dependencies里面的包它自然会下载更改。

  但问题是,maven independencies里面的包,并不是所有的hadoop版本都包含,例如hadoop-core最高的版本就是1.2.1, 这可要吓死宝宝了,难道说,要运行maven就只能用低版本的hadoop吗?显然不可能,一定是有其他的原因,突然看到一个帖子,绕过hadoop-core,设置了别的属性,比如hadoop-hdfs等属性,这些属性的最高版本已经到了2.5.1了这样一来,就不会报错了,大功告成,我的pom.xml文件是这么设置的:

<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-common</artifactId>
<version>2.8.3</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-hdfs</artifactId>
<version>2.8.3</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>2.8.3</version>
</dependency>

  原先我是没有设置hadoop-common、hadoop-hdfs、hadoop-client这三个,而是写了个:

<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-core</artifactId>
<version>1.2.1</version>
</dependency>

maven在Idea建立工程,运行出现Server IPC version 9 cannot communicate with client version 4错误的更多相关文章

  1. 解决:Server IPC version 9 cannot communicate with client version 4

    使用idea的maven项目运行mapreduce程序Server IPC version 9 cannot communicate with client version 4 原因: Java初始化 ...

  2. bug--java访问hdfs (Server IPC version 9 cannot communicate with client version 4 错误)

    1. 今天想做一个hdfs的java工具类,但是在连接hdfs的时候,报如下错误: Exception in thread "main" org.apache.hadoop.ipc ...

  3. PHP错误:SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client

    使用PHP连接MySQL 8的时候,可能会发生如标题所示的错误: SQLSTATE[HY000] [2054] The server requested authentication method u ...

  4. mysql8.0:SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client

    忽然注意到的情况: 2018/7/19至2018/9/13之间发布的7.1.20.7.1.21.7.1.22和7.2.8.7.2.9.7.2.10这六个版本提供的对caching_sha2_passw ...

  5. maven工程运行演示

    通过maven提供的命令来运行maven工程,体会maven构建工程的优点. (1)运行web工程    进入maven工程目录(当前目录有pom.xml),运行tomcat:run命令 可能出现的问 ...

  6. eclipse 创建maven 项目 动态web工程完整示例

    需求表均同springmvc案例 此处只是使用maven 注意,以下所有需要建立在你的eclipse等已经集成配置好了maven了,说白了就是新建项目的时候已经可以找到maven了 没有的话需要安装m ...

  7. 1.创建maven 项目 动态web工程完整示例

    注意,以下所有需要建立在你的eclipse等已经集成配置好了maven了,说白了就是新建项目的时候已经可以找到maven了 没有的话需要安装maven 一.创建项目 1.新建maven项目,如果不在上 ...

  8. eclipse+maven+tomcat构建web工程

    我们要利用Maven构建一个web应用,开发环境为eclipse+tomcat.构建过程如下: 1.工具准备 eclipse:版本为eclipse 4.2(Juno Service),maven插件的 ...

  9. eclipse 创建maven 项目 动态web工程完整示例 maven 整合springmvc整合mybatis

    接上一篇: eclipse 创建maven 项目 动态web工程完整示例 eclipse maven工程自动添加依赖设置 maven工程可以在线搜索依赖的jar包,还是非常方便的 但是有的时候可能还需 ...

随机推荐

  1. html 水平竖直居中

    line-height:容器高度 <!DOCTYPE html> <html lang="en"> <head> <meta charse ...

  2. CodeForces 161D Distance in Tree【树形DP】

    <题目链接> 题目大意:一颗无向无环树,有n个顶点,求其中距离为k的点对数是多少,(u,v)与(v,u)为同一点对. #include <cstdio> #include &l ...

  3. linux学习笔记 yum 在线管理软件包

    -y  如果yum在工作过程中需要使用者响应.这个参数可以直接回答yes #yum list 列出资源库中所有可安装或者可更新的rpm包 #yum perl 列出为perl的包 #yum perl* ...

  4. mongoose update操作属性中的变量

    最近在学习mongoose操作数据库,利用schema模型.记录一下通过使用update()操作实现数据库更新: 可在属性中添加变量,'属性名.0',可以修改该属性的第一条属性,依次类推,但是如果想实 ...

  5. PHP的json_encode不兼容JSON_UNESCAPED_UNICODE的解决方案

    PHP5.4才支持JSON_UNESCAPED_UNICODE这个参数,此参数是让中文字符在json_encode的时候不用转义,减少数据传输量.但在PHP5.3中,就得自己写个函数来实现,以下就是解 ...

  6. js点击回到顶部

    ---恢复内容开始--- <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...

  7. python执行方式及变量

    .python执行方式 (1)交互式:调试方便,无法保存代码 (2)命令行方式:可以永久保存代码 (3)python执行阶段 先启动python解释器,解释器像文本编辑器一样将文件内容从硬盘读到内存, ...

  8. 利用select检索数据

    没错这就是DQL,数据查询语言.来看看怎么用. select语句按照复杂程度来说分为简单查询.where查询.多表查询.子查询等. 先来看看select的语法 1.select 2.[distince ...

  9. linux 常用命令解压压缩

    tar -zxvf filename.tar.gz // 解包 tar -xvf filename.tar // 解包 tar -zcvf filename.tar.gz target // 制作ta ...

  10. Android 指定 Theme

    在 application 标签中添加 android:theme="@android:style/Theme.Holo.Light.NoActionBar"