博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
maven在Idea建立工程,运行出现Server IPC version 9 cannot communicate with client version 4错误...
阅读量:4561 次
发布时间:2019-06-08

本文共 1192 字,大约阅读时间需要 3 分钟。

  问题的根源在于,工程当中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文件是这么设置的:

org.apache.hadoop
hadoop-common
2.8.3
org.apache.hadoop
hadoop-hdfs
2.8.3
org.apache.hadoop
hadoop-client
2.8.3

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

org.apache.hadoop
hadoop-core
1.2.1

 

转载于:https://www.cnblogs.com/lcngu/p/8444037.html

你可能感兴趣的文章
java学习笔记《一》网络编程基础
查看>>
设计模式
查看>>
mysqld_safe A mysqld process already exists
查看>>
六年测试之精华分享:产品质量应从哪些方面提高
查看>>
文件处理
查看>>
for循环
查看>>
【转】Android手机客户端关于二维码扫描的源码--不错
查看>>
【转】Java 多线程(四) 多线程访问成员变量与局部变量
查看>>
【转】gcc warning: braces around scalar initializer (标量初始化的括号)
查看>>
C/C++内存泄漏及检测(vs2005平台)【转】
查看>>
SpringBoot中遇到的问题---【Whitelabel Error Page 404 spring boot解决方法】
查看>>
python之路--模块--景丽洋
查看>>
postfix队列管理
查看>>
编译安装nginx
查看>>
操作系统的硬件环境
查看>>
js三种定义类的方法
查看>>
LeetCode——Unique Binary Search Trees
查看>>
Python运算符及基本数据类型
查看>>
noip2006提高组题解
查看>>
最短路(数据处理):HDU 5817 Ice Walls
查看>>