【问题标题】:UnsatisfiedLinkError when running TypeDB on an M1 MacBook在 M1 MacBook 上运行 TypeDB 时出现 UnsatisfiedLinkError
【发布时间】:2022-09-29 19:18:25
【问题描述】:

我尝试使用./typedb server 在我的 M1 MacBook 上运行 TypeDB,但会导致以下错误:

Exception in thread \"main\" java.lang.UnsatisfiedLinkError: Can\'t load library: /var/folders/5v/95_mbj013y93vsmc8xps0stm0000gp/T/librocksdbjni8182124459810412816.jnilib
    at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2393)
    at java.base/java.lang.Runtime.load0(Runtime.java:755)
    at java.base/java.lang.System.load(System.java:1953)

使用不兼容的 JDK 运行 Java 程序时可能会出现此错误。我能做些什么来解决它?

    标签: java unsatisfiedlinkerror vaticle-typedb


    【解决方案1】:

    如果正在运行的 JDK 以 aarch64 (ARM)(M1 Mac 使用的架构)为目标,则在启动时会抛出 UnsatisfiedLinkError。目前还没有 TypeDB 的原生 ARM 版本,因此为了让 TypeDB 在 M1 MacBook 上正确运行,您需要确保安装了针对 x64 架构的 JDK。

    例如,要安装 Eclipse Temurin(基于 OpenJDK):

    1. 访问 https://adoptium.net/en-GB/temurin/releases/?version=11 浏览 Temurin 版本
    2. 选择JDK 11 操作系统MacOS 和架构x64
    3. 下载并安装下面列表中显示的 Java 二进制文件
    4. 通过运行java --version 验证Java 是否已正确安装;输出应与下载的 JDK 版本匹配

      请注意,此方法依赖于 MacOS 的 Rosetta translation,这将对应用程序造成性能开销。

    【讨论】:

    • 采用openjdk.net 现在建议我们从adoption.net 下载,所以也许我们应该更新它的答案?还值得建议用户下载 PKG 发行版以便于安装。
    【解决方案2】:

    我的电脑是 MacBook Air M1。我也遇到了这个问题。

    我尝试了 Java 17 和 Java 8,两者都被归档。最后,当我切换到Java 11,错误消失了。希望这可以帮助。

    【讨论】:

      猜你喜欢
      • 2021-12-16
      • 1970-01-01
      • 2022-01-18
      • 2021-11-29
      • 1970-01-01
      • 2021-10-19
      • 2022-10-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多