javagwtweblogicgxterrai

java.lang.IllegalAccessError: tried to access method com.google.common.collect.MapMaker.makeComputingMap(); from WeldMessageConveyor


I get the following exception when I try deploying my webApp on weblogic12:

weblogic.application.ModuleException: java.lang.IllegalAccessError: tried to access method com.google.common.collect.MapMaker.makeComputingMap(Lcom/google/common/base/Function;)Ljava/util/concurrent/ConcurrentMap; from class org.jboss.weld.logging.WeldMessageConveyor
at weblogic.application.internal.ExtensibleModuleWrapper.start(ExtensibleModuleWrapper.java:140)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:124)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:213)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:208)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:42)
Truncated. see log file for complete stacktrace
Caused By: java.lang.IllegalAccessError: tried to access method com.google.common.collect.MapMaker.makeComputingMap(Lcom/google/common/base/Function;)Ljava/util/concurrent/ConcurrentMap; from class org.jboss.weld.logging.WeldMessageConveyor
at org.jboss.weld.logging.WeldMessageConveyor.<init>(WeldMessageConveyor.java:61)
at org.jboss.weld.logging.WeldMessageConveyerFactory.getDefaultMessageConveyer(WeldMessageConveyerFactory.java:27)
at org.jboss.weld.logging.LoggerFactory.<init>(LoggerFactory.java:37)
at org.jboss.weld.logging.LoggerFactory.loggerFactory(LoggerFactory.java:51)
at org.jboss.weld.bootstrap.WeldBootstrap.<clinit>(WeldBootstrap.java:126)
Truncated. see log file for complete stacktrace

Any one has an idea why? My application uses Errai


Solution

  • Based on @JoseM comment, this link helped. A quick fix I applied for now was to downgrade my guava lib from 16.0.1 to 14.0.1.