简体   繁体   English

apache giraph:java.lang.IllegalAccessError

[英]apache giraph: java.lang.IllegalAccessError

I have been trying to run an Apache Giraph job on an Ubuntu server with Hadoop 2.7.3 and Giraph 1.3.0. 我一直在尝试在具有Hadoop 2.7.3和Giraph 1.3.0的Ubuntu服务器上运行Apache Giraph作业。 I have also tried to run the same job on Hadoop 2.6 with lower versions of Giraph (1.2/1.1). 我还尝试在具有较低版本Giraph(1.2 / 1.1)的Hadoop 2.6上运行相同的作业。 But I receive the following error in both the situations. 但是在两种情况下我都会收到以下错误。

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)

Has anybody experienced a similar situation ? 有没有人遇到过类似的情况?

由于您的hadoop版本,在hadoop 2.6.0中更改了setPingInterval()方法的访问修饰符,将您的hadoop版本降级为2.5.1,它将可以正常工作。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM