apache giraph:java.lang.IllegalAccessError

时间:2017-03-06 07:03:51

标签: hadoop giraph

我一直在尝试使用Hadoop 2.7.3和Giraph 1.3.0在Ubuntu服务器上运行Apache Giraph作业。我还尝试在Hadoop 2.6上使用较低版本的Giraph(1.2 / 1.1)运行相同的工作。但是在这两种情况下我都收到以下错误。

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)

有没有人遇到类似的情况?

1 个答案:

答案 0 :(得分:0)

由于你的hadoop版本,setPingInterval()方法的访问修饰符在hadoop 2.6.0中已被更改,将你的hadoop版本降级为2.5.1并且它将正常工作。