title: Cannsandra Driver & jnr-Unixsocket - java.lang.UnsatisfiedLinkError: could not load FFI provider jnr.ffi.provider.jffi.Provider
body: <p>I am using cassandra and jnr-unix socket in my project and both uses jnr-ffi. Not getting any error in my local, but getting error in test env.</p>
  
  <p>The versions are,</p>
  
  <pre><code>Cassandra version - 3.3.2 
  jnr-unixsocket - 0.12
  </code></pre>
  
  <p>Error happens on calling UnixSocketChannel.open() from my code.</p>
  
  <p>Code from the hierarchy,</p>
  
  <pre><code>public ApacheUnixSocket() throws IOException {
          this.inner = UnixSocketChannel.open();
          this.addr = null;
      }
  </code></pre>
  
  <p>The complete trace is as follows. This error happens only when i call Unisocket, but rest all looks good. Service starts as expected and able to communicate with cassandra db using the driver. Still, i see cassandra trace also. Bit confusing ...</p>
  
  <p><strong>Error :-</strong></p>
  
  <pre><code>java.lang.UnsatisfiedLinkError: could not load FFI provider jnr.ffi.provider.jffi.Provider
      at jnr.ffi.provider.InvalidProvider$1.loadLibrary(InvalidProvider.java:48)
      at jnr.ffi.LibraryLoader.load(LibraryLoader.java:290)
      at jnr.unixsocket.Native.&lt;clinit&gt;(Native.java:76)
      at jnr.unixsocket.UnixSocketChannel.&lt;init&gt;(UnixSocketChannel.java:94)
      at jnr.unixsocket.UnixSocketChannel.open(UnixSocketChannel.java:49)
      at com.test.service.docker.ApacheUnixSocket.&lt;init&gt;(ApacheUnixSocket.java:36)
      at com.test.service.docker.UnixConnectionSocketFactory.createSocket(UnixConnectionSocketFactory.java:42)
      at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:118)
      at org.apache.http.impl.conn.BasicHttpClientConnectionManager.connect(BasicHttpClientConnectionManager.java:338)
      at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:380)
      at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236)
      at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)
      at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:88)
      at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
      at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184)
      at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
      at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:107)
      at com.test.service.docker.DockerClient.getData(DockerClient.java:123)
      at com.test.service.docker.DockerClient.updateContainerMetrics(DockerClient.java:88)
      at com.test.service.docker.DockerContainerMetrics.refreshDockerStats(DockerContainerMetrics.java:109)
      at com.test.service.docker.DockerContainerMetrics.lambda$start$1(DockerContainerMetrics.java:78)
      at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
      at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
      at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
      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)
  Caused by: java.lang.ExceptionInInitializerError: null
      at jnr.ffi.provider.jffi.NativeRuntime.getInstance(NativeRuntime.java:49)
      at jnr.ffi.provider.jffi.Provider.&lt;init&gt;(Provider.java:29)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
      at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
      at java.lang.Class.newInstance(Class.java:442)
      at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.getInstance(FFIProvider.java:68)
      at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.&lt;clinit&gt;(FFIProvider.java:57)
      at jnr.ffi.provider.FFIProvider.getSystemProvider(FFIProvider.java:35)
      at jnr.ffi.LibraryLoader.create(LibraryLoader.java:73)
      at com.datastax.driver.core.Native$LibCLoader.&lt;clinit&gt;(Native.java:108)
      at com.datastax.driver.core.Native.isGettimeofdayAvailable(Native.java:190)
      at com.datastax.driver.core.ClockFactory.newInstance(Clock.java:51)
      at com.datastax.driver.core.AbstractMonotonicTimestampGenerator.&lt;init&gt;(AbstractMonotonicTimestampGenerator.java:43)
      at com.datastax.driver.core.LoggingMonotonicTimestampGenerator.&lt;init&gt;(LoggingMonotonicTimestampGenerator.java:49)
      at com.datastax.driver.core.AtomicMonotonicTimestampGenerator.&lt;init&gt;(AtomicMonotonicTimestampGenerator.java:50)
      at com.datastax.driver.core.AtomicMonotonicTimestampGenerator.&lt;init&gt;(AtomicMonotonicTimestampGenerator.java:37)
      at com.datastax.driver.core.policies.Policies.defaultTimestampGenerator(Policies.java:121)
      at com.datastax.driver.core.policies.Policies$Builder.build(Policies.java:286)
      at com.datastax.driver.core.Cluster$Builder.getConfiguration(Cluster.java:1317)
      at com.datastax.driver.core.Cluster.&lt;init&gt;(Cluster.java:113)
      at com.datastax.driver.core.Cluster.buildFrom(Cluster.java:178)
      at com.datastax.driver.core.Cluster$Builder.build(Cluster.java:1335)
      at com.test.data.cassandra.spring.boot.CassandraAutoConfiguration$CassandraBuilderFactory.buildCluster(CassandraAutoConfiguration.java:133)
      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:498)
      at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:162)
      at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:588)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1173)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1067)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:513)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483)
      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
      at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:208)
      at org.springframework.beans.factory.support.DefaultListableBeanFactory.addCandidateEntry(DefaultListableBeanFactory.java:1316)
      at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1282)
      at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveMultipleBeans(DefaultListableBeanFactory.java:1205)
      at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1096)
      at org.springframework.beans.factory.support.DefaultListableBeanFactory$OptionalDependencyFactory.createOptionalDependency(DefaultListableBeanFactory.java:1602)
      at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1053)
      at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:835)
      at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:741)
      at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:467)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1173)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1067)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:513)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483)
      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
      at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:115)
      at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:687)
      at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:525)
      at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122)
      at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:693)
      at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:360)
      at org.springframework.boot.SpringApplication.run(SpringApplication.java:303)
      at org.springframework.boot.SpringApplication.run(SpringApplication.java:1118)
      at org.springframework.boot.SpringApplication.run(SpringApplication.java:1107)
      at com.test.service.Application.main(Application.java:90)
      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:498)
      at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)
      at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
      at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)
      at org.springframework.boot.loader.WarLauncher.main(WarLauncher.java:59)
  Caused by: java.lang.IllegalStateException: Can't overwrite cause with java.lang.UnsatisfiedLinkError: java.lang.UnsatisfiedLinkError: No such file or directory
      at com.kenai.jffi.internal.StubLoader.loadFromJar(StubLoader.java:364)
      at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:254)
      at com.kenai.jffi.internal.StubLoader.&lt;clinit&gt;(StubLoader.java:434)
      at java.lang.Class.forName0(Native Method)
      at java.lang.Class.forName(Class.java:348)
      at com.kenai.jffi.Init.load(Init.java:68)
      at com.kenai.jffi.Foreign$InstanceHolder.getInstanceHolder(Foreign.java:49)
      at com.kenai.jffi.Foreign$InstanceHolder.&lt;clinit&gt;(Foreign.java:45)
      at com.kenai.jffi.Foreign.getInstance(Foreign.java:103)
      at com.kenai.jffi.Type$Builtin.lookupTypeInfo(Type.java:242)
      at com.kenai.jffi.Type$Builtin.getTypeInfo(Type.java:237)
      at com.kenai.jffi.Type.resolveSize(Type.java:155)
      at com.kenai.jffi.Type.size(Type.java:138)
      at jnr.ffi.provider.jffi.NativeRuntime$TypeDelegate.size(NativeRuntime.java:178)
      at jnr.ffi.provider.AbstractRuntime.&lt;init&gt;(AbstractRuntime.java:48)
      at jnr.ffi.provider.jffi.NativeRuntime.&lt;init&gt;(NativeRuntime.java:57)
      at jnr.ffi.provider.jffi.NativeRuntime.&lt;init&gt;(NativeRuntime.java:41)
      at jnr.ffi.provider.jffi.NativeRuntime$SingletonHolder.&lt;clinit&gt;(NativeRuntime.java:53)
      at jnr.ffi.provider.jffi.NativeRuntime.getInstance(NativeRuntime.java:49)
      at jnr.ffi.provider.jffi.Provider.&lt;init&gt;(Provider.java:29)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
      at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
      at java.lang.Class.newInstance(Class.java:442)
      at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.getInstance(FFIProvider.java:68)
      at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.&lt;clinit&gt;(FFIProvider.java:57)
      at jnr.ffi.provider.FFIProvider.getSystemProvider(FFIProvider.java:35)
      at jnr.ffi.LibraryLoader.create(LibraryLoader.java:73)
      at com.datastax.driver.core.Native$LibCLoader.&lt;clinit&gt;(Native.java:108)
      at com.datastax.driver.core.Native.isGettimeofdayAvailable(Native.java:190)
      at com.datastax.driver.core.ClockFactory.newInstance(Clock.java:51)
      at com.datastax.driver.core.AbstractMonotonicTimestampGenerator.&lt;init&gt;(AbstractMonotonicTimestampGenerator.java:43)
      at com.datastax.driver.core.LoggingMonotonicTimestampGenerator.&lt;init&gt;(LoggingMonotonicTimestampGenerator.java:49)
      at com.datastax.driver.core.AtomicMonotonicTimestampGenerator.&lt;init&gt;(AtomicMonotonicTimestampGenerator.java:50)
      at com.datastax.driver.core.AtomicMonotonicTimestampGenerator.&lt;init&gt;(AtomicMonotonicTimestampGenerator.java:37)
      at com.datastax.driver.core.policies.Policies.defaultTimestampGenerator(Policies.java:121)
      at com.datastax.driver.core.policies.Policies$Builder.build(Policies.java:286)
      at com.datastax.driver.core.Cluster$Builder.getConfiguration(Cluster.java:1317)
      at com.datastax.driver.core.Cluster.&lt;init&gt;(Cluster.java:113)
      at com.datastax.driver.core.Cluster.buildFrom(Cluster.java:178)
      at com.datastax.driver.core.Cluster$Builder.build(Cluster.java:1335)
      at com.test.cassandra.spring.boot.autoconfigure.CassandraAutoConfiguration$CassandraBuilderFactory.buildCluster(CassandraAutoConfiguration.java:133)
      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:498)
      at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:162)
      at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:588)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1173)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1067)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:513)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483)
      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
      at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:208)
      at org.springframework.beans.factory.support.DefaultListableBeanFactory.addCandidateEntry(DefaultListableBeanFactory.java:1316)
      at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1282)
      at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveMultipleBeans(DefaultListableBeanFactory.java:1205)
      at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1096)
      at org.springframework.beans.factory.support.DefaultListableBeanFactory$OptionalDependencyFactory.createOptionalDependency(DefaultListableBeanFactory.java:1602)
      at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1053)
      at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:835)
      at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:741)
      at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:467)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1173)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1067)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:513)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483)
      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
      at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:115)
      at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:687)
      at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:525)
      at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122)
      at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:693)
      at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:360)
      at org.springframework.boot.SpringApplication.run(SpringApplication.java:303)
      at org.springframework.boot.SpringApplication.run(SpringApplication.java:1118)
      at org.springframework.boot.SpringApplication.run(SpringApplication.java:1107)
      at com.test.service.Application.main(Application.java:90)
      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:498)
      at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)
      at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
      at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)
      at org.springframework.boot.loader.WarLauncher.main(WarLauncher.java:59)
  java.lang.UnsatisfiedLinkError: Can't load library: /usr/lib/libjffi-1.2.so
      at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1827)
      at java.lang.Runtime.load0(Runtime.java:809)
      at java.lang.System.load(System.java:1086)
      at com.kenai.jffi.internal.StubLoader.loadFromBootPath(StubLoader.java:316)
      at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:249)
      at com.kenai.jffi.internal.StubLoader.&lt;clinit&gt;(StubLoader.java:434)
      at java.lang.Class.forName0(Native Method)
      at java.lang.Class.forName(Class.java:348)
      at com.kenai.jffi.Init.load(Init.java:68)
      at com.kenai.jffi.Foreign$InstanceHolder.getInstanceHolder(Foreign.java:49)
      at com.kenai.jffi.Foreign$InstanceHolder.&lt;clinit&gt;(Foreign.java:45)
      at com.kenai.jffi.Foreign.getInstance(Foreign.java:103)
      at com.kenai.jffi.Type$Builtin.lookupTypeInfo(Type.java:242)
      at com.kenai.jffi.Type$Builtin.getTypeInfo(Type.java:237)
      at com.kenai.jffi.Type.resolveSize(Type.java:155)
      at com.kenai.jffi.Type.size(Type.java:138)
      at jnr.ffi.provider.jffi.NativeRuntime$TypeDelegate.size(NativeRuntime.java:178)
      at jnr.ffi.provider.AbstractRuntime.&lt;init&gt;(AbstractRuntime.java:48)
      at jnr.ffi.provider.jffi.NativeRuntime.&lt;init&gt;(NativeRuntime.java:57)
      at jnr.ffi.provider.jffi.NativeRuntime.&lt;init&gt;(NativeRuntime.java:41)
      at jnr.ffi.provider.jffi.NativeRuntime$SingletonHolder.&lt;clinit&gt;(NativeRuntime.java:53)
      at jnr.ffi.provider.jffi.NativeRuntime.getInstance(NativeRuntime.java:49)
      at jnr.ffi.provider.jffi.Provider.&lt;init&gt;(Provider.java:29)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
      at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
      at java.lang.Class.newInstance(Class.java:442)
      at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.getInstance(FFIProvider.java:68)
      at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.&lt;clinit&gt;(FFIProvider.java:57)
      at jnr.ffi.provider.FFIProvider.getSystemProvider(FFIProvider.java:35)
      at jnr.ffi.LibraryLoader.create(LibraryLoader.java:73)
      at com.datastax.driver.core.Native$LibCLoader.&lt;clinit&gt;(Native.java:108)
      at com.datastax.driver.core.Native.isGettimeofdayAvailable(Native.java:190)
      at com.datastax.driver.core.ClockFactory.newInstance(Clock.java:51)
      at com.datastax.driver.core.AbstractMonotonicTimestampGenerator.&lt;init&gt;(AbstractMonotonicTimestampGenerator.java:43)
      at com.datastax.driver.core.LoggingMonotonicTimestampGenerator.&lt;init&gt;(LoggingMonotonicTimestampGenerator.java:49)
      at com.datastax.driver.core.AtomicMonotonicTimestampGenerator.&lt;init&gt;(AtomicMonotonicTimestampGenerator.java:50)
      at com.datastax.driver.core.AtomicMonotonicTimestampGenerator.&lt;init&gt;(AtomicMonotonicTimestampGenerator.java:37)
      at com.datastax.driver.core.policies.Policies.defaultTimestampGenerator(Policies.java:121)
      at com.datastax.driver.core.policies.Policies$Builder.build(Policies.java:286)
      at com.datastax.driver.core.Cluster$Builder.getConfiguration(Cluster.java:1317)
      at com.datastax.driver.core.Cluster.&lt;init&gt;(Cluster.java:113)
      at com.datastax.driver.core.Cluster.buildFrom(Cluster.java:178)
      at com.datastax.driver.core.Cluster$Builder.build(Cluster.java:1335)
      at com.test.cassandra.spring.boot.autoconfigure.CassandraAutoConfiguration$CassandraBuilderFactory.buildCluster(CassandraAutoConfiguration.java:133)
      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:498)
      at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:162)
      at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:588)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1173)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1067)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:513)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483)
  </code></pre>
  
  <p><a href="https://i.stack.imgur.com/6TV6E.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/6TV6E.png" alt="enter image description here"></a></p>