适用于 Mac OS M1 芯片的嵌入式 Cassandra

问题描述 投票:0回答:1

我正在尝试使用 Ventura Os 连接到 mac Os M1 芯片中的嵌入式 cassandra

卡桑德拉版本:3.11.14 嵌入式 Cassandra 版本:4.0.7

我得到了

线程“main”com.github.nosan.embedded.cassandra.CassandraException 中出现异常:无法启动 DefaultCassandra{name='cassandra-0', version='3.11.14'}。引起:java.io.FileNotFoundException:/var/folders/50/fwdzhkdd4zz_yn53s0szx2vw0000gq/T/apache-cassandra-6267611957967446273/bin/cassandra不存在。

我尝试调试在 apache-cassandra-6267611957967446273 内创建的所有文件夹,但未创建 bin 文件夹。

帮助会很棒。

寻求修复帮助

nosql cassandra-3.0 embedded-cassandra
1个回答
0
投票

我今天尝试运行它,我得到了什么:

public class CassandraExample {

    public static void main(String[] args) {
        Cassandra cassandra = new CassandraBuilder()
                .addJvmOptions("-Xmx1024m", "-Xms1024m", "-Xss700k")
                .version("3.11.14")
                .build();

        cassandra.start();
        try {
            System.out.println(cassandra.getSettings().getPort());
        }
        finally {
            cassandra.stop();
        }
    }

}
ERROR [main] 2023-11-21 10:51:43,122 NativeLibraryDarwin.java:64 - Failed to link the C library against JNA. Native methods will be unavailable.
java.lang.UnsatisfiedLinkError: /private/var/folders/gq/64q79vjd4w16f9lzpl59mv8m0000gn/T/jna--1523686274/jna6880458316740657136.tmp: dlopen(/private/var/folders/gq/64q79vjd4w16f9lzpl59mv8m0000gn/T/jna--1523686274/jna6880458316740657136.tmp, 0x0001): tried: '/private/var/folders/gq/64q79vjd4w16f9lzpl59mv8m0000gn/T/jna--1523686274/jna6880458316740657136.tmp' (fat file, but missing compatible architecture (have 'i386,x86_64', need 'arm64')), '/System/Volumes/Preboot/Cryptexes/OS/private/var/folders/gq/64q79vjd4w16f9lzpl59mv8m0000gn/T/jna--1523686274/jna6880458316740657136.tmp' (no such file), '/private/var/folders/gq/64q79vjd4w16f9lzpl59mv8m0000gn/T/jna--1523686274/jna6880458316740657136.tmp' (fat file, but missing compatible architecture (have 'i386,x86_64', need 'arm64'))
    at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1950)
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1832)
    at java.lang.Runtime.load0(Runtime.java:811)
    at java.lang.System.load(System.java:1088)
    at com.sun.jna.Native.loadNativeDispatchLibraryFromClasspath(Native.java:851)
    at com.sun.jna.Native.loadNativeDispatchLibrary(Native.java:826)
    at com.sun.jna.Native.<clinit>(Native.java:140)
    at com.sun.jna.NativeLibrary.<clinit>(NativeLibrary.java:84)
    at org.apache.cassandra.utils.NativeLibraryDarwin.<clinit>(NativeLibraryDarwin.java:55)
    at org.apache.cassandra.utils.NativeLibrary.<clinit>(NativeLibrary.java:90)
    at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:212)
    at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:633)
    at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:786)
WARN  [main] 2023-11-21 10:51:43,123 StartupChecks.java:136 - jemalloc shared library could not be preloaded to speed up memory allocations
WARN  [main] 2023-11-21 10:51:43,123 StartupChecks.java:169 - JMX is not enabled to receive remote connections. Please see cassandra-env.sh for more info.
ERROR [main] 2023-11-21 10:51:43,124 CassandraDaemon.java:803 - The native library could not be initialized properly. 
    at com.github.nosan.embedded.cassandra.DefaultCassandra.await(DefaultCassandra.java:235)
    ... 2 more

您确定Apache Cassandra 3.11.14支持M1芯片吗?

关于您关于 FileNotFoundException 的问题,看起来下载的文件有问题。

您可以清理 ~/.embedded-cassandra 目录并重试吗?

© www.soinside.com 2019 - 2024. All rights reserved.