stateIs0/lu-raft-kv

java.lang.UnsatisfiedLinkError

Opened this issue · 5 comments

您好,我在 Mac(M1 处理器) 上运行出现了异常,请教下怎么解决呢,
我的 jdk 版本是 zulu 出得 jdk11,
异常信息如下:

Exception in thread "main" java.lang.UnsatisfiedLinkError: /private/var/folders/z4/gn9br015731gt_290mkz_9x80000gn/T/librocksdbjni333205147224129941.jnilib: dlopen(/private/var/folders/z4/gn9br015731gt_290mkz_9x80000gn/T/librocksdbjni333205147224129941.jnilib, 1): no suitable image found. Did find:
/private/var/folders/z4/gn9br015731gt_290mkz_9x80000gn/T/librocksdbjni333205147224129941.jnilib: mach-o, but wrong architecture
/private/var/folders/z4/gn9br015731gt_290mkz_9x80000gn/T/librocksdbjni333205147224129941.jnilib: mach-o, but wrong architecture
at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method)
at java.base/java.lang.ClassLoader$NativeLibrary.load(ClassLoader.java:2442)
at java.base/java.lang.ClassLoader$NativeLibrary.loadLibrary(ClassLoader.java:2498)
at java.base/java.lang.ClassLoader.loadLibrary0(ClassLoader.java:2694)
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2627)
at java.base/java.lang.Runtime.load0(Runtime.java:768)
at java.base/java.lang.System.load(System.java:1837)
at org.rocksdb.NativeLibraryLoader.loadLibraryFromJar(NativeLibraryLoader.java:78)
at org.rocksdb.NativeLibraryLoader.loadLibrary(NativeLibraryLoader.java:56)
at org.rocksdb.RocksDB.loadLibrary(RocksDB.java:64)
at org.rocksdb.RocksDB.(RocksDB.java:35)
at cn.think.in.java.impl.DefaultStateMachine.(DefaultStateMachine.java:52)
at cn.think.in.java.impl.DefaultStateMachine.(DefaultStateMachine.java:36)
at cn.think.in.java.impl.DefaultStateMachine$DefaultStateMachineLazyHolder.(DefaultStateMachine.java:89)
at cn.think.in.java.impl.DefaultStateMachine.getInstance(DefaultStateMachine.java:73)
at cn.think.in.java.constant.StateMachineSaveType.(StateMachineSaveType.java:32)
at cn.think.in.java.RaftNodeBootStrap.boot(RaftNodeBootStrap.java:58)
at cn.think.in.java.RaftNodeBootStrap.main(RaftNodeBootStrap.java:38)

用jdk8试试

试了也不行,一样的异常。

其它java项目能正常运行吗

可以的,是不是要先安装 RocksDB,我装下试试

RocksDB会通过Maven自动引入,不需要手动安装的。你可以把RocksDB的相关代码注释掉然后启动试试