ARM64计算机上的Cassandra启动失败(java.lang.NoClassDefFoundError:无法初始化com.sun.jna.Native类)

当我尝试在运行64位oracle JDK的ARM64计算机上启动cassandra 3.9和3.7时.但是它无法从没有找到类定义错误开始. JNA似乎有问题.

但是,同样可以在ARM32机器上正常运行.

以下是cassandra的启动日志:-

pi @ DietPi:〜/ cassandra / apache-cassandra-3.9 / conf $../bin/cassandra -f

CompilerOracle: dontinline org/apache/cassandra/db/Columns$Serializer.deserializeLargeSubset (Lorg/apache/cassandra/io/util/DataInputPlus;Lorg/apache/cassandra/db/Columns;I)Lorg/apache/cassandra/db/Columns;
CompilerOracle: dontinline org/apache/cassandra/db/Columns$Serializer.serializeLargeSubset (Ljava/util/Collection;ILorg/apache/cassandra/db/Columns;ILorg/apache/cassandra/io/util/DataOutputPlus;)V
CompilerOracle: dontinline org/apache/cassandra/db/Columns$Serializer.serializeLargeSubsetSize (Ljava/util/Collection;ILorg/apache/cassandra/db/Columns;I)I
CompilerOracle: dontinline org/apache/cassandra/db/transform/BaseIterator.tryGetMoreContents ()Z
CompilerOracle: dontinline org/apache/cassandra/db/transform/StoppingTransformation.stop ()V
CompilerOracle: dontinline org/apache/cassandra/db/transform/StoppingTransformation.stopInPartition ()V
CompilerOracle: dontinline org/apache/cassandra/io/util/BufferedDataOutputStreamPlus.doFlush (I)V
CompilerOracle: dontinline org/apache/cassandra/io/util/BufferedDataOutputStreamPlus.writeExcessSlow ()V
CompilerOracle: dontinline org/apache/cassandra/io/util/BufferedDataOutputStreamPlus.writeSlow (JI)V
CompilerOracle: dontinline org/apache/cassandra/io/util/RebufferingInputStream.readPrimitiveSlowly (I)J
CompilerOracle: inline org/apache/cassandra/db/rows/UnfilteredSerializer.serializeRowBody (Lorg/apache/cassandra/db/rows/Row;ILorg/apache/cassandra/db/SerializationHeader;Lorg/apache/cassandra/io/util/DataOutputPlus;)V
CompilerOracle: inline org/apache/cassandra/io/util/Memory.checkBounds (JJ)V
CompilerOracle: inline org/apache/cassandra/io/util/SafeMemory.checkBounds (JJ)V
CompilerOracle: inline org/apache/cassandra/utils/AsymmetricOrdering.selectBoundary (Lorg/apache/cassandra/utils/AsymmetricOrdering/Op;II)I
CompilerOracle: inline org/apache/cassandra/utils/AsymmetricOrdering.strictnessOfLessThan (Lorg/apache/cassandra/utils/AsymmetricOrdering/Op;)I
CompilerOracle: inline org/apache/cassandra/utils/BloomFilter.indexes (Lorg/apache/cassandra/utils/IFilter/FilterKey;)[J
CompilerOracle: inline org/apache/cassandra/utils/BloomFilter.setIndexes (JJIJ[J)V
CompilerOracle: inline org/apache/cassandra/utils/ByteBufferUtil.compare (Ljava/nio/ByteBuffer;[B)I
CompilerOracle: inline org/apache/cassandra/utils/ByteBufferUtil.compare ([BLjava/nio/ByteBuffer;)I
CompilerOracle: inline org/apache/cassandra/utils/ByteBufferUtil.compareUnsigned (Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I
CompilerOracle: inline org/apache/cassandra/utils/FastByteOperations$UnsafeOperations.compareTo (Ljava/lang/Object;JILjava/lang/Object;JI)I
CompilerOracle: inline org/apache/cassandra/utils/FastByteOperations$UnsafeOperations.compareTo (Ljava/lang/Object;JILjava/nio/ByteBuffer;)I
CompilerOracle: inline org/apache/cassandra/utils/FastByteOperations$UnsafeOperations.compareTo (Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I
CompilerOracle: inline org/apache/cassandra/utils/vint/VIntCoding.encodeVInt (JI)[B
INFO  01:33:11 Configuration location: file:/home/pi/cassandra/apache-cassandra-3.9/conf/cassandra.yaml
INFO  01:33:14 Node configuration:[allocate_tokens_for_keyspace=null; authenticator=AllowAllAuthenticator; authorizer=AllowAllAuthorizer; auto_bootstrap=true; auto_snapshot=true; batch_size_fail_threshold_in_kb=50; batch_size_warn_threshold_in_kb=5; batchlog_replay_throttle_in_kb=1024; broadcast_address=null; broadcast_rpc_address=null; buffer_pool_use_heap_if_exhausted=true; cas_contention_timeout_in_ms=1000; cdc_enabled=false; cdc_free_space_check_interval_ms=250; cdc_raw_directory=null; cdc_total_space_in_mb=null; client_encryption_options=<REDACTED>; cluster_name=Test Cluster; column_index_cache_size_in_kb=2; column_index_size_in_kb=64; commit_failure_policy=stop; commitlog_compression=null; commitlog_directory=null; commitlog_max_compression_buffers_in_pool=3; commitlog_periodic_queue_size=-1; commitlog_segment_size_in_mb=32; commitlog_sync=periodic; commitlog_sync_batch_window_in_ms=null; commitlog_sync_period_in_ms=10000; commitlog_total_space_in_mb=null; compaction_large_partition_warning_threshold_mb=100; compaction_throughput_mb_per_sec=16; concurrent_compactors=null; concurrent_counter_writes=32; concurrent_materialized_view_writes=32; concurrent_reads=32; concurrent_replicates=null; concurrent_writes=32; counter_cache_keys_to_save=2147483647; counter_cache_save_period=7200; counter_cache_size_in_mb=null; counter_write_request_timeout_in_ms=5000; credentials_cache_max_entries=1000; credentials_update_interval_in_ms=-1; credentials_validity_in_ms=2000; cross_node_timeout=false; data_file_directories=[Ljava.lang.String;@62379589; disk_access_mode=auto; disk_failure_policy=stop; disk_optimization_estimate_percentile=0.95; disk_optimization_page_cross_chance=0.1; disk_optimization_strategy=ssd; dynamic_snitch=true; dynamic_snitch_badness_threshold=0.1; dynamic_snitch_reset_interval_in_ms=600000; dynamic_snitch_update_interval_in_ms=100; enable_scripted_user_defined_functions=false; enable_user_defined_functions=false; enable_user_defined_functions_threads=true; encryption_options=null; endpoint_snitch=SimpleSnitch; file_cache_size_in_mb=null; gc_log_threshold_in_ms=200; gc_warn_threshold_in_ms=1000; hinted_handoff_disabled_datacenters=[]; hinted_handoff_enabled=true; hinted_handoff_throttle_in_kb=1024; hints_compression=null; hints_directory=null; hints_flush_period_in_ms=10000; incremental_backups=false; index_interval=null; index_summary_capacity_in_mb=null; index_summary_resize_interval_in_minutes=60; initial_token=null; inter_dc_stream_throughput_outbound_megabits_per_sec=200; inter_dc_tcp_nodelay=false; internode_authenticator=null; internode_compression=dc; internode_recv_buff_size_in_bytes=null; internode_send_buff_size_in_bytes=null; key_cache_keys_to_save=2147483647; key_cache_save_period=14400; key_cache_size_in_mb=null; listen_address=localhost; listen_interface=null; listen_interface_prefer_ipv6=false; listen_on_broadcast_address=false; max_hint_window_in_ms=10800000; max_hints_delivery_threads=2; max_hints_file_size_in_mb=128; max_mutation_size_in_kb=null; max_streaming_retries=3; max_value_size_in_mb=256; memtable_allocation_type=heap_buffers; memtable_cleanup_threshold=null; memtable_flush_writers=1; memtable_heap_space_in_mb=null; memtable_offheap_space_in_mb=null; min_free_space_per_drive_in_mb=50; native_transport_max_concurrent_connections=-1; native_transport_max_concurrent_connections_per_ip=-1; native_transport_max_frame_size_in_mb=256; native_transport_max_threads=128; native_transport_port=9042; native_transport_port_ssl=null; num_tokens=256; otc_coalescing_strategy=TIMEHORIZON; otc_coalescing_window_us=200; partitioner=org.apache.cassandra.dht.Murmur3Partitioner; permissions_cache_max_entries=1000; permissions_update_interval_in_ms=-1; permissions_validity_in_ms=2000; phi_convict_threshold=8.0; prepared_statements_cache_size_mb=null; range_request_timeout_in_ms=10000; read_request_timeout_in_ms=5000; request_scheduler=org.apache.cassandra.scheduler.NoScheduler; request_scheduler_id=null; request_scheduler_options=null; request_timeout_in_ms=10000; role_manager=CassandraRoleManager; roles_cache_max_entries=1000; roles_update_interval_in_ms=-1; roles_validity_in_ms=2000; row_cache_class_name=org.apache.cassandra.cache.OHCProvider; row_cache_keys_to_save=2147483647; row_cache_save_period=0; row_cache_size_in_mb=0; rpc_address=localhost; rpc_interface=null; rpc_interface_prefer_ipv6=false; rpc_keepalive=true; rpc_listen_backlog=50; rpc_max_threads=2147483647; rpc_min_threads=16; rpc_port=9160; rpc_recv_buff_size_in_bytes=null; rpc_send_buff_size_in_bytes=null; rpc_server_type=sync; saved_caches_directory=null; seed_provider=org.apache.cassandra.locator.SimpleSeedProvider{seeds=127.0.0.1}; server_encryption_options=<REDACTED>; snapshot_before_compaction=false; ssl_storage_port=7001; sstable_preemptive_open_interval_in_mb=50; start_native_transport=true; start_rpc=false; storage_port=7000; stream_throughput_outbound_megabits_per_sec=200; streaming_socket_timeout_in_ms=86400000; thrift_framed_transport_size_in_mb=15; thrift_max_message_length_in_mb=16; thrift_prepared_statements_cache_size_mb=null; tombstone_failure_threshold=100000; tombstone_warn_threshold=1000; tracetype_query_ttl=86400; tracetype_repair_ttl=604800; transparent_data_encryption_options=org.apache.cassandra.config.TransparentDataEncryptionOptions@4afcd809; trickle_fsync=false; trickle_fsync_interval_in_kb=10240; truncate_request_timeout_in_ms=60000; unlogged_batch_across_partitions_warn_threshold=10; user_defined_function_fail_timeout=1500; user_defined_function_warn_timeout=500; user_function_timeout_policy=die; windows_timer_interval=1; write_request_timeout_in_ms=2000]
INFO  01:33:14 DiskAccessMode 'auto' determined to be mmap, indexAccessMode is mmap
INFO  01:33:15 Global memtable on-heap threshold is enabled at 242MB
INFO  01:33:15 Global memtable off-heap threshold is enabled at 242MB
WARN  01:33:15 Small commitlog volume detected at ../bin/../data/commitlog; setting commitlog_total_space_in_mb to 1843.  You can override this in cassandra.yaml
WARN  01:33:15 Small cdc volume detected at ../bin/../data/cdc_raw; setting cdc_total_space_in_mb to 921.  You can override this in cassandra.yaml
WARN  01:33:15 Only 5.650GiB free across all data volumes. Consider adding more capacity to your cluster or removing obsolete snapshots
INFO  01:33:15 Hostname: DietPi
INFO  01:33:15 JVM vendor/version: Java HotSpot(TM) 64-Bit Server VM/1.8.0_101
INFO  01:33:15 Heap size: 969.250MiB/969.250MiB
INFO  01:33:15 Code Cache Non-heap memory: init = 2097152(2048K) used = 796288(777K) committed = 2097152(2048K) max = 50331648(49152K)
INFO  01:33:15 Metaspace Non-heap memory: init = 0(0K) used = 16180072(15800K) committed = 16646144(16256K) max = -1(-1K)
INFO  01:33:15 Compressed Class Space Non-heap memory: init = 0(0K) used = 2068984(2020K) committed = 2228224(2176K) max = 1073741824(1048576K)
INFO  01:33:15 Par Eden Space Heap memory: init = 208142336(203264K) used = 83350320(81396K) committed = 208142336(203264K) max = 208142336(203264K)
INFO  01:33:15 Par Survivor Space Heap memory: init = 25952256(25344K) used = 0(0K) committed = 25952256(25344K) max = 25952256(25344K)
INFO  01:33:15 CMS Old Gen Heap memory: init = 782237696(763904K) used = 0(0K) committed = 782237696(763904K) max = 782237696(763904K)
INFO  01:33:15 Classpath: ../bin/../conf:../bin/../build/classes/main:../bin/../build/classes/thrift:../bin/../lib/HdrHistogram-2.1.9.jar:../bin/../lib/ST4-4.0.8.jar:../bin/../lib/airline-0.6.jar:../bin/../lib/antlr-runtime-3.5.2.jar:../bin/../lib/apache-cassandra-3.9.jar:../bin/../lib/apache-cassandra-clientutil-3.9.jar:../bin/../lib/apache-cassandra-thrift-3.9.jar:../bin/../lib/asm-5.0.4.jar:../bin/../lib/caffeine-2.2.6.jar:../bin/../lib/cassandra-driver-core-3.0.1-shaded.jar:../bin/../lib/commons-cli-1.1.jar:../bin/../lib/commons-codec-1.2.jar:../bin/../lib/commons-lang3-3.1.jar:../bin/../lib/commons-math3-3.2.jar:../bin/../lib/compress-lzf-0.8.4.jar:../bin/../lib/concurrent-trees-2.4.0.jar:../bin/../lib/concurrentlinkedhashmap-lru-1.4.jar:../bin/../lib/disruptor-3.0.1.jar:../bin/../lib/ecj-4.4.2.jar:../bin/../lib/guava-18.0.jar:../bin/../lib/high-scale-lib-1.0.6.jar:../bin/../lib/hppc-0.5.4.jar:../bin/../lib/jackson-core-asl-1.9.2.jar:../bin/../lib/jackson-mapper-asl-1.9.2.jar:../bin/../lib/jamm-0.3.0.jar:../bin/../lib/javax.inject.jar:../bin/../lib/jbcrypt-0.3m.jar:../bin/../lib/jcl-over-slf4j-1.7.7.jar:../bin/../lib/jflex-1.6.0.jar:../bin/../lib/jna-4.0.0.jar:../bin/../lib/joda-time-2.4.jar:../bin/../lib/json-simple-1.1.jar:../bin/../lib/libthrift-0.9.2.jar:../bin/../lib/log4j-over-slf4j-1.7.7.jar:../bin/../lib/logback-classic-1.1.3.jar:../bin/../lib/logback-core-1.1.3.jar:../bin/../lib/lz4-1.3.0.jar:../bin/../lib/metrics-core-3.1.0.jar:../bin/../lib/metrics-jvm-3.1.0.jar:../bin/../lib/metrics-logback-3.1.0.jar:../bin/../lib/netty-all-4.0.39.Final.jar:../bin/../lib/ohc-core-0.4.3.jar:../bin/../lib/ohc-core-j8-0.4.3.jar:../bin/../lib/primitive-1.0.jar:../bin/../lib/reporter-config-base-3.0.0.jar:../bin/../lib/reporter-config3-3.0.0.jar:../bin/../lib/sigar-1.6.4.jar:../bin/../lib/slf4j-api-1.7.7.jar:../bin/../lib/snakeyaml-1.11.jar:../bin/../lib/snappy-java-1.1.1.7.jar:../bin/../lib/snowball-stemmer-1.3.0.581.1.jar:../bin/../lib/stream-2.5.2.jar:../bin/../lib/thrift-server-0.3.7.jar:../bin/../lib/jsr223/*/*.jar:../bin/../lib/jamm-0.3.0.jar
INFO  01:33:15 JVM Arguments: [-Xloggc:../bin/../logs/gc.log, -ea, -XX:+UseThreadPriorities, -XX:ThreadPriorityPolicy=42, -XX:+HeapDumpOnOutOfMemoryError, -Xss256k, -XX:StringTableSize=1000003, -XX:+AlwaysPreTouch, -XX:-UseBiasedLocking, -XX:+UseTLAB, -XX:+ResizeTLAB, -XX:+PerfDisableSharedMem, -Djava.net.preferIPv4Stack=true, -XX:+UseParNewGC, -XX:+UseConcMarkSweepGC, -XX:+CMSParallelRemarkEnabled, -XX:SurvivorRatio=8, -XX:MaxTenuringThreshold=1, -XX:CMSInitiatingOccupancyFraction=75, -XX:+UseCMSInitiatingOccupancyOnly, -XX:CMSWaitDuration=10000, -XX:+CMSParallelInitialMarkEnabled, -XX:+CMSEdenChunksRecordAlways, -XX:+CMSClassUnloadingEnabled, -XX:+PrintGCDetails, -XX:+PrintGCDateStamps, -XX:+PrintHeapAtGC, -XX:+PrintTenuringDistribution, -XX:+PrintGCApplicationStoppedTime, -XX:+PrintPromotionFailure, -XX:+UseGCLogFileRotation, -XX:NumberOfGCLogFiles=10, -XX:GCLogFileSize=10M, -Xms994M, -Xmx994M, -Xmn248M, -XX:+UseCondCardMark, -XX:CompileCommandFile=../bin/../conf/hotspot_compiler, -javaagent:../bin/../lib/jamm-0.3.0.jar, -Dcassandra.jmx.local.port=7199, -Dcom.sun.management.jmxremote.authenticate=false, -Dcom.sun.management.jmxremote.password.file=/etc/cassandra/jmxremote.password, -Djava.library.path=../bin/../lib/sigar-bin, -Djava.io.tmpdir=/home/pi/tmp, -Dlogback.configurationFile=logback.xml, -Dcassandra.logdir=../bin/../logs, -Dcassandra.storagedir=../bin/../data, -Dcassandra-foreground=yes]
WARN  01:33:15 JNA link failure, one or more native method will be unavailable.
WARN  01:33:15 jemalloc shared library could not be preloaded to speed up memory allocations
WARN  01:33:15 JMX is not enabled to receive remote connections. Please see cassandra-env.sh for more info.
INFO  01:33:15 Initializing SIGAR library
INFO  01:33:15 Could not initialize SIGAR library org.hyperic.sigar.Sigar.getFileSystemListNative()[Lorg/hyperic/sigar/FileSystem; 
INFO  01:33:15 Sigar could not be initialized, test for checking degraded mode omitted.
INFO  01:33:16 Initialized prepared statement caches with 10 MB (native) and 10 MB (Thrift)
INFO  01:33:19 Initializing system.IndexInfo
INFO  01:33:23 Initializing system.batches
INFO  01:33:23 Initializing system.paxos
INFO  01:33:23 Initializing system.local
INFO  01:33:23 Initializing system.peers
INFO  01:33:23 Initializing system.peer_events
INFO  01:33:23 Initializing system.range_xfers
INFO  01:33:23 Initializing system.compaction_history
INFO  01:33:23 Initializing system.sstable_activity
INFO  01:33:23 Initializing system.size_estimates
INFO  01:33:23 Initializing system.available_ranges
INFO  01:33:23 Initializing system.views_builds_in_progress
INFO  01:33:24 Initializing system.built_views
INFO  01:33:24 Initializing system.hints
INFO  01:33:24 Initializing system.batchlog
INFO  01:33:24 Initializing system.schema_keyspaces
INFO  01:33:24 Initializing system.schema_columnfamilies
INFO  01:33:24 Initializing system.schema_columns
INFO  01:33:24 Initializing system.schema_triggers
INFO  01:33:24 Initializing system.schema_usertypes
INFO  01:33:24 Initializing system.schema_functions
INFO  01:33:24 Initializing system.schema_aggregates
INFO  01:33:24 Not submitting build tasks for views in keyspace system as storage service is not initialized
INFO  01:33:25 Configured JMX server at: service:jmx:rmi://127.0.0.1/jndi/rmi://127.0.0.1:7199/jmxrmi
Exception (java.lang.RuntimeException) encountered during startup: java.util.concurrent.ExecutionException: java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native
java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native
    at org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:403)
    at org.apache.cassandra.db.SystemKeyspace.forceBlockingFlush(SystemKeyspace.java:793)
    at org.apache.cassandra.db.SystemKeyspace.removeTruncationRecord(SystemKeyspace.java:639)
    at org.apache.cassandra.db.ColumnFamilyStore.invalidate(ColumnFamilyStore.java:541)
    at org.apache.cassandra.db.ColumnFamilyStore.invalidate(ColumnFamilyStore.java:517)
    at org.apache.cassandra.schema.LegacySchemaMigrator.lambda$unloadLegacySchemaTables$1(LegacySchemaMigrator.java:137)
    at java.lang.Iterable.forEach(Iterable.java:75)
    at org.apache.cassandra.schema.LegacySchemaMigrator.unloadLegacySchemaTables(LegacySchemaMigrator.java:137)
    at org.apache.cassandra.schema.LegacySchemaMigrator.migrate(LegacySchemaMigrator.java:83)
    at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:254)
    at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:601)
    at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:730)
Caused by: java.util.concurrent.ExecutionException: java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native
    at java.util.concurrent.FutureTask.report(FutureTask.java:122)
    at java.util.concurrent.FutureTask.get(FutureTask.java:192)
    at org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:399)
    ... 11 more
Caused by: java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native
    at org.apache.cassandra.utils.memory.MemoryUtil.allocate(MemoryUtil.java:98)
    at org.apache.cassandra.io.util.Memory.<init>(Memory.java:74)
    at org.apache.cassandra.io.util.SafeMemory.<init>(SafeMemory.java:32)
    at org.apache.cassandra.io.compress.CompressionMetadata$Writer.<init>(CompressionMetadata.java:316)
    at org.apache.cassandra.io.compress.CompressionMetadata$Writer.open(CompressionMetadata.java:330)
    at org.apache.cassandra.io.compress.CompressedSequentialWriter.<init>(CompressedSequentialWriter.java:94)
    at org.apache.cassandra.io.sstable.format.big.BigTableWriter.<init>(BigTableWriter.java:84)
    at org.apache.cassandra.io.sstable.format.big.BigFormat$WriterFactory.open(BigFormat.java:92)
    at org.apache.cassandra.io.sstable.format.SSTableWriter.create(SSTableWriter.java:101)
    at org.apache.cassandra.io.sstable.SimpleSSTableMultiWriter.create(SimpleSSTableMultiWriter.java:119)
    at org.apache.cassandra.db.compaction.AbstractCompactionStrategy.createSSTableMultiWriter(AbstractCompactionStrategy.java:553)
    at org.apache.cassandra.db.compaction.CompactionStrategyManager.createSSTableMultiWriter(CompactionStrategyManager.java:905)
    at org.apache.cassandra.db.ColumnFamilyStore.createSSTableMultiWriter(ColumnFamilyStore.java:506)
    at org.apache.cassandra.db.Memtable$FlushRunnable.createFlushWriter(Memtable.java:483)
    at org.apache.cassandra.db.Memtable$FlushRunnable.<init>(Memtable.java:422)
    at org.apache.cassandra.db.Memtable$FlushRunnable.<init>(Memtable.java:399)
    at org.apache.cassandra.db.Memtable.flushRunnables(Memtable.java:277)
    at org.apache.cassandra.db.ColumnFamilyStore$Flush.flushMemtable(ColumnFamilyStore.java:1117)
    at org.apache.cassandra.db.ColumnFamilyStore$Flush.run(ColumnFamilyStore.java:1084)
    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)
ERROR 01:33:25 Exception encountered during startup
java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native
    at org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:403) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.db.SystemKeyspace.forceBlockingFlush(SystemKeyspace.java:793) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.db.SystemKeyspace.removeTruncationRecord(SystemKeyspace.java:639) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.db.ColumnFamilyStore.invalidate(ColumnFamilyStore.java:541) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.db.ColumnFamilyStore.invalidate(ColumnFamilyStore.java:517) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.schema.LegacySchemaMigrator.lambda$unloadLegacySchemaTables$1(LegacySchemaMigrator.java:137) ~[apache-cassandra-3.9.jar:3.9]
    at java.lang.Iterable.forEach(Iterable.java:75) ~[na:1.8.0_101]
    at org.apache.cassandra.schema.LegacySchemaMigrator.unloadLegacySchemaTables(LegacySchemaMigrator.java:137) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.schema.LegacySchemaMigrator.migrate(LegacySchemaMigrator.java:83) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:254) [apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:601) [apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:730) [apache-cassandra-3.9.jar:3.9]
Caused by: java.util.concurrent.ExecutionException: java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native
    at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[na:1.8.0_101]
    at java.util.concurrent.FutureTask.get(FutureTask.java:192) ~[na:1.8.0_101]
    at org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:399) ~[apache-cassandra-3.9.jar:3.9]
    ... 11 common frames omitted
Caused by: java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native
    at org.apache.cassandra.utils.memory.MemoryUtil.allocate(MemoryUtil.java:98) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.io.util.Memory.<init>(Memory.java:74) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.io.util.SafeMemory.<init>(SafeMemory.java:32) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.io.compress.CompressionMetadata$Writer.<init>(CompressionMetadata.java:316) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.io.compress.CompressionMetadata$Writer.open(CompressionMetadata.java:330) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.io.compress.CompressedSequentialWriter.<init>(CompressedSequentialWriter.java:94) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.io.sstable.format.big.BigTableWriter.<init>(BigTableWriter.java:84) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.io.sstable.format.big.BigFormat$WriterFactory.open(BigFormat.java:92) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.io.sstable.format.SSTableWriter.create(SSTableWriter.java:101) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.io.sstable.SimpleSSTableMultiWriter.create(SimpleSSTableMultiWriter.java:119) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.db.compaction.AbstractCompactionStrategy.createSSTableMultiWriter(AbstractCompactionStrategy.java:553) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.db.compaction.CompactionStrategyManager.createSSTableMultiWriter(CompactionStrategyManager.java:905) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.db.ColumnFamilyStore.createSSTableMultiWriter(ColumnFamilyStore.java:506) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.db.Memtable$FlushRunnable.createFlushWriter(Memtable.java:483) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.db.Memtable$FlushRunnable.<init>(Memtable.java:422) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.db.Memtable$FlushRunnable.<init>(Memtable.java:399) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.db.Memtable.flushRunnables(Memtable.java:277) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.db.ColumnFamilyStore$Flush.flushMemtable(ColumnFamilyStore.java:1117) ~[apache-cassandra-3.9.jar:3.9]
    at org.apache.cassandra.db.ColumnFamilyStore$Flush.run(ColumnFamilyStore.java:1084) ~[apache-cassandra-3.9.jar:3.9]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_101]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ~[na:1.8.0_101]
    at java.lang.Thread.run(Thread.java:745) ~[na:1.8.0_101]

我在这里做错了什么?

解决方法:

似乎您遇到了与JNA link issue while starting cassandra RHEL 6.5类似的问题

你可以试试:

This issue is caused due to noexec flag on the /tmp folder.

I then decided to change the tmp folder by changing tmpdir using option:
-Djava.io.tmpdir=/home/cassandra/tmp That fixed the issue.

I added the options in cassandra-env.sh file. Added following statement -

JVM_OPTS="$JVM_OPTS -Djava.io.tmpdir=/home/cassandra/tmp"
上一篇:Flutter 打包问题 Could not resolve io.flutter:arm64_v8a_release


下一篇:线程池参数