title: CacheException:Unable to invoke public void org.infinispan.remoting.transport.jgroups.JGroupsTransport.start() on object of type JGroupsTransport
body: <p>I am using distributed caching with Infinispan-core-8.2.4.Final.jar and jgroups-3.6.7.Final.jar with Wildfly 10.1.0 but getting below exception in start up only.</p>
  
  <pre><code>org.infinispan.manager.EmbeddedCacheManagerStartupException: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.remoting.transport.jgroups.JGroupsTransport.start() on object of type JGroupsTransport
  </code></pre>
  
  <p>here is my jgroups-tcp.xml</p>
  
  <pre><code>&lt;!--
      TCP based stack, with flow control and message bundling. This is usually used when IP
      multicasting cannot be used in a network, e.g. because it is disabled (routers discard multicast).
      Note that TCP.bind_addr and TCPPING.initial_hosts should be set, possibly via system properties, e.g.
      -Djgroups.bind_addr=192.168.0.1 and -Djgroups.tcpping.initial_hosts=192.168.0.1[7810]
      author: Bela Ban
  --&gt;
  &lt;config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns="urn:org:jgroups"
          xsi:schemaLocation="urn:org:jgroups http://www.jgroups.org/schema/jgroups.xsd"&gt;
      &lt;TCP bind_addr="${jgroups.bind_addr:127.0.0.1}"
           bind_port="7800"
           recv_buf_size="${tcp.recv_buf_size:5M}"
           send_buf_size="${tcp.send_buf_size:5M}"
           max_bundle_size="64K"
           max_bundle_timeout="30"
           use_send_queues="true"
           sock_conn_timeout="300"
  
           timer_type="new3"
           timer.min_threads="4"
           timer.max_threads="10"
           timer.keep_alive_time="3000"
           timer.queue_max_size="500"
  
           thread_pool.enabled="true"
           thread_pool.min_threads="2"
           thread_pool.max_threads="8"
           thread_pool.keep_alive_time="5000"
           thread_pool.queue_enabled="true"
           thread_pool.queue_max_size="10000"
           thread_pool.rejection_policy="discard"
  
           oob_thread_pool.enabled="true"
           oob_thread_pool.min_threads="1"
           oob_thread_pool.max_threads="8"
           oob_thread_pool.keep_alive_time="5000"
           oob_thread_pool.queue_enabled="false"
           oob_thread_pool.queue_max_size="100"
           oob_thread_pool.rejection_policy="discard"/&gt;
  
      &lt;TCPPING async_discovery="true"
               initial_hosts="${jgroups.tcpping.initial_hosts:localhost[7800],localhost[7801]}"
               port_range="10"/&gt;
      &lt;MERGE3  min_interval="10000"
               max_interval="30000"/&gt;
      &lt;FD_SOCK/&gt;
      &lt;FD timeout="10000" max_tries="3" /&gt;
      &lt;VERIFY_SUSPECT timeout="1500"  /&gt;
      &lt;BARRIER /&gt;
      &lt;pbcast.NAKACK2 use_mcast_xmit="false"
                      discard_delivered_msgs="true"/&gt;
      &lt;UNICAST3 /&gt;
      &lt;pbcast.STABLE stability_delay="1000" desired_avg_gossip="50000"
                     max_bytes="4M"/&gt;
      &lt;pbcast.GMS print_local_addr="true" join_timeout="2000"
                  view_bundling="true"/&gt;
      &lt;MFC max_credits="2M"
           min_threshold="0.4"/&gt;
      &lt;FRAG2 frag_size="60K"  /&gt;
      &lt;!--RSVP resend_interval="2000" timeout="10000"/--&gt;
      &lt;pbcast.STATE_TRANSFER/&gt;
  &lt;/config&gt;
  </code></pre>
  
  <p>and my infinispan-configs.xml contains</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
  &lt;infinispan
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="urn:infinispan:config:8.0 http://www.infinispan.org/schemas/infinispan-config-8.0.xsd"
          xmlns="urn:infinispan:config:8.0"&gt;
     &lt;jgroups&gt;
        &lt;stack-file name="tcp" path="${jboss.server.config.dir}\jgroups-tcp.xml"/&gt;
     &lt;/jgroups&gt;
  
     &lt;cache-container name="shop"&gt;
        &lt;transport stack="tcp"/&gt;
         &lt;distributed-cache name="Customers" mode="SYNC" owners="2"&gt;
             &lt;locking acquire-timeout="30000" concurrency-level="100" /&gt;
         &lt;/distributed-cache&gt;
         &lt;jmx domain="shopcluster" /&gt;
     &lt;/cache-container&gt;
  &lt;/infinispan&gt;
  </code></pre>
  
  <p>and from class path i am dynamically substituting the IP addresses or Host name of all hosts like this</p>
  
  <pre><code>set "JAVA_OPTS=%JAVA_OPTS% -Djgroups.bind_addr=HOST-1 -Djgroups.tcpping.initial_hosts=HOST-1[7800],HOST-2[7801] -Djava.net.preferIPv4Stack=true";
  </code></pre>
  
  <p>Please help me to identify the cause of this issue. your help will be highly appreciated. thanks in advance.</p>
  
  <p>Below is the full stack trace : </p>
  
  <pre><code>06:25:08,700 ERROR [com.shop.cache.ShopCacheManager] (ServerService Thread Pool -- 96) Failed to get cache: : org.infinispan.manager.EmbeddedCacheManagerStartupException: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.remoting.transport.jgroups.JGroupsTransport.start() on object of type JGroupsTransport
          at org.infinispan.factories.GlobalComponentRegistry.start(GlobalComponentRegistry.java:249)
          at org.infinispan.manager.DefaultCacheManager.start(DefaultCacheManager.java:663)
          at org.infinispan.manager.DefaultCacheManager.&lt;init&gt;(DefaultCacheManager.java:310)
          at org.infinispan.jcache.embedded.JCacheManager.&lt;init&gt;(JCacheManager.java:70)
          at org.infinispan.jcache.embedded.JCachingProvider.createCacheManager(JCachingProvider.java:46)
          at org.infinispan.jcache.AbstractJCachingProvider.getCacheManager(AbstractJCachingProvider.java:67)
          at org.infinispan.jcache.AbstractJCachingProvider.getCacheManager(AbstractJCachingProvider.java:80)
          at com.shop.cache.ShopCacheManager.getShopCache(ShopCacheManager.java:51)
          at com.shop.cache.ShopCacheManager.getShopCache(ShopCacheManager.java:29)
          at com.shop.security.SecurityCacheManager.ALL_SHOPS(SecurityCacheManager.java:35)
          at com.shop.security.SecurityCheck.&lt;init&gt;(SecurityCheck.java:200)
          at com.shop.security.SecurityUserAdminCheck.&lt;init&gt;(SecurityUserAdminCheck.java:42)
          at com.shop.security.SecStartup.initializeSecurityObjects(SecStartup.java:53)
          at com.shop.security.SecStartup.postStart(SecStartup.java:35)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
          at java.lang.reflect.Method.invoke(Method.java:497)
          at org.jboss.as.ee.component.ManagedReferenceLifecycleMethodInterceptor.processInvocation(ManagedReferenceLifecycleMethodInterceptor.java:96)
          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
          at org.jboss.as.weld.ejb.Jsr299BindingsInterceptor.doLifecycleInterception(Jsr299BindingsInterceptor.java:114)
          at org.jboss.as.weld.ejb.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:103)
          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
          at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:437)
          at org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:73)
          at org.jboss.as.weld.ejb.EjbRequestScopeActivationInterceptor.processInvocation(EjbRequestScopeActivationInterceptor.java:83)
          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
          at org.jboss.as.weld.injection.WeldInjectionInterceptor.processInvocation(WeldInjectionInterceptor.java:53)
          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
          at org.jboss.as.ee.component.AroundConstructInterceptorFactory$1.processInvocation(AroundConstructInterceptorFactory.java:28)
          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
          at org.jboss.as.weld.injection.WeldInterceptorInjectionInterceptor.processInvocation(WeldInterceptorInjectionInterceptor.java:56)
          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
          at org.jboss.as.weld.ejb.Jsr299BindingsCreateInterceptor.processInvocation(Jsr299BindingsCreateInterceptor.java:100)
          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
          at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50)
          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
          at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:275)
          at org.jboss.as.ejb3.tx.CMTTxInterceptor.requiresNew(CMTTxInterceptor.java:349)
          at org.jboss.as.ejb3.tx.LifecycleCMTTxInterceptor.processInvocation(LifecycleCMTTxInterceptor.java:66)
          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
          at org.jboss.as.weld.injection.WeldInjectionContextInterceptor.processInvocation(WeldInjectionContextInterceptor.java:43)
          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
          at org.jboss.as.ejb3.component.interceptors.CurrentInvocationContextInterceptor.processInvocation(CurrentInvocationContextInterceptor.java:41)
          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
          at org.jboss.as.ee.concurrent.ConcurrentContextInterceptor.processInvocation(ConcurrentContextInterceptor.java:45)
          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
          at org.jboss.invocation.ContextClassLoaderInterceptor.processInvocation(ContextClassLoaderInterceptor.java:64)
          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
          at org.jboss.invocation.InterceptorContext.run(InterceptorContext.java:356)
          at org.jboss.invocation.PrivilegedWithCombinerInterceptor.processInvocation(PrivilegedWithCombinerInterceptor.java:80)
          at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
          at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)
          at org.jboss.as.ee.component.BasicComponent.constructComponentInstance(BasicComponent.java:161)
          at org.jboss.as.ee.component.BasicComponent.constructComponentInstance(BasicComponent.java:134)
          at org.jboss.as.ee.component.BasicComponent.createInstance(BasicComponent.java:88)
          at org.jboss.as.ejb3.component.singleton.SingletonComponent.getComponentInstance(SingletonComponent.java:124)
          at org.jboss.as.ejb3.component.singleton.SingletonComponent.start(SingletonComponent.java:138)
          at org.jboss.as.ee.component.ComponentStartService$1.run(ComponentStartService.java:54)
          at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
          at java.util.concurrent.FutureTask.run(FutureTask.java:266)
          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
          at java.lang.Thread.run(Thread.java:745)
          at org.jboss.threads.JBossThread.run(JBossThread.java:320)
  Caused by: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.remoting.transport.jgroups.JGroupsTransport.start() on object of type JGroupsTransport
          at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:172)
          at org.infinispan.factories.AbstractComponentRegistry$PrioritizedMethod.invoke(AbstractComponentRegistry.java:859)
          at org.infinispan.factories.AbstractComponentRegistry.invokeStartMethods(AbstractComponentRegistry.java:628)
          at org.infinispan.factories.AbstractComponentRegistry.internalStart(AbstractComponentRegistry.java:617)
          at org.infinispan.factories.AbstractComponentRegistry.start(AbstractComponentRegistry.java:542)
          at org.infinispan.factories.GlobalComponentRegistry.start(GlobalComponentRegistry.java:236)
          ... 64 more
  Caused by: org.infinispan.commons.CacheException: Unable to start JGroups Channel
          at org.infinispan.remoting.transport.jgroups.JGroupsTransport.startJGroupsChannelIfNeeded(JGroupsTransport.java:202)
          at org.infinispan.remoting.transport.jgroups.JGroupsTransport.start(JGroupsTransport.java:191)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
          at java.lang.reflect.Method.invoke(Method.java:497)
          at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:168)
          ... 69 more
  Caused by: java.lang.Exception: connecting to channel "ISPN" failed
          at org.jgroups.JChannel._connect(JChannel.java:570)
          at org.jgroups.JChannel.connect(JChannel.java:294)
          at org.jgroups.JChannel.connect(JChannel.java:279)
          at org.infinispan.remoting.transport.jgroups.JGroupsTransport.startJGroupsChannelIfNeeded(JGroupsTransport.java:200)
          ... 75 more
  Caused by: java.lang.RuntimeException: java.lang.IllegalAccessError: tried to access class org.infinispan.remoting.transport.jgroups.JGroupsTransport$NotifyViewChange from class org.infinispan.remoting.transport.jgroups.JGroupsTransport
          at org.jgroups.blocks.MessageDispatcher$ProtocolAdapter.up(MessageDispatcher.java:669)
          at org.jgroups.JChannel.up(JChannel.java:738)
          at org.jgroups.stack.ProtocolStack.up(ProtocolStack.java:1030)
          at org.jgroups.protocols.pbcast.STATE_TRANSFER.up(STATE_TRANSFER.java:146)
          at org.jgroups.protocols.FRAG2.up(FRAG2.java:165)
          at org.jgroups.protocols.FlowControl.up(FlowControl.java:390)
          at org.jgroups.protocols.pbcast.GMS.installView(GMS.java:730)
          at org.jgroups.protocols.pbcast.ClientGmsImpl.becomeSingletonMember(ClientGmsImpl.java:278)
          at org.jgroups.protocols.pbcast.ClientGmsImpl.joinInternal(ClientGmsImpl.java:87)
          at org.jgroups.protocols.pbcast.ClientGmsImpl.join(ClientGmsImpl.java:41)
          at org.jgroups.protocols.pbcast.GMS.down(GMS.java:1082)
          at org.jgroups.protocols.FlowControl.down(FlowControl.java:347)
          at org.jgroups.protocols.FRAG2.down(FRAG2.java:136)
          at org.jgroups.protocols.pbcast.STATE_TRANSFER.down(STATE_TRANSFER.java:202)
          at org.jgroups.stack.ProtocolStack.down(ProtocolStack.java:1039)
          at org.jgroups.JChannel.down(JChannel.java:790)
          at org.jgroups.JChannel._connect(JChannel.java:564)
          ... 78 more
  Caused by: java.lang.IllegalAccessError: tried to access class org.infinispan.remoting.transport.jgroups.JGroupsTransport$NotifyViewChange from class org.infinispan.remoting.transport.jgroups.JGroupsTransport
          at org.infinispan.remoting.transport.jgroups.JGroupsTransport.viewAccepted(JGroupsTransport.java:894)
          at org.jgroups.blocks.MessageDispatcher.handleUpEvent(MessageDispatcher.java:618)
          at org.jgroups.blocks.MessageDispatcher$ProtocolAdapter.up(MessageDispatcher.java:666)
          ... 94 more
  </code></pre>