错误:no such method error:org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashLong(J)I

来源:互联网 发布:wps有mac版本吗 编辑:程序博客网 时间:2024/06/05 21:00

在玩hadoop的实例的时候,发现了这么一个错误:

Exception in thread "main" java.lang.NoSuchMethodError: org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashLong(J)Iat org.apache.hadoop.yarn.proto.YarnProtos$LocalResourceProto.hashCode(YarnProtos.java:11864)at org.apache.hadoop.yarn.api.records.impl.pb.LocalResourcePBImpl.hashCode(LocalResourcePBImpl.java:62)at java.util.HashMap.hash(HashMap.java:338)at java.util.HashMap.put(HashMap.java:611)at org.apache.hadoop.mapred.LocalDistributedCacheManager.setup(LocalDistributedCacheManager.java:133)at org.apache.hadoop.mapred.LocalJobRunner$Job.<init>(LocalJobRunner.java:163)at org.apache.hadoop.mapred.LocalJobRunner.submitJob(LocalJobRunner.java:731)at org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:240)at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1290)at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1287)at java.security.AccessController.doPrivileged(Native Method)at javax.security.auth.Subject.doAs(Subject.java:422)at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1698)at org.apache.hadoop.mapreduce.Job.submit(Job.java:1287)at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1308)


开始也没有想到是protobuf-java包的问题,一直以为是hadoop-yarn包下的问题,我hadoop用的是2.7.3,google的protobuf-java的包是2.6.1,最后把protobuf-java包升级成3.0.0

问题解决

1 0