我一直在尝试在装有Hadoop 2.7.3和Giraph 1.3.0的Ubuntu服务器上运行Apache Giraph作业。我还尝试使用较低版本的Giraph (1.2/1.1)在Hadoop2.6上运行相同的作业。但在这两种情况下我都会收到以下错误。
Exception in thread "main" java.lang.IllegalAccessError: tried to access method org.apache.hadoop.ipc.Client.setPingInterval(Lorg/apache/hadoop/conf/Configuration;I)V from class org.apache.giraph.job.GiraphJob
at org.apache.giraph.job.GiraphJob.run(GiraphJob.java:213)
at org.apache.giraph.GiraphRunner.run(GiraphRunner.java:94)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
at org.apache.giraph.GiraphRunner.main(GiraphRunner.java:124)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.hadoop.util.RunJar.run(RunJar.java:221)
at org.apache.hadoop.util.RunJar.main(RunJar.java:136)有没有人经历过类似的情况?
发布于 2017-04-10 18:46:09
这是因为你的hadoop版本,setPingInterval()方法的访问修饰符在hadoop2.6.0中已经改变了,将你的hadoop版本降级到2.5.1,它会工作得很好。
https://stackoverflow.com/questions/42619434
复制相似问题