0

我正在尝试 Nand2Tetris 课程,并且已经到了想要使用硬件模拟器运行和测试 hdl 文件的地步。我下载了软件套装,按照以下说明运行:

# I had a dangling symlink issue at the beginning
# and the full path was apparently the way to solve it
chmod +x ~/.../nand2tetris/tools/HardwareSimulator.sh

我尝试使用以下命令运行脚本: ./HardwareSimulator.sh

并收到以下错误:

Exception in thread "main" java.lang.UnsatisfiedLinkError: Can't load library: /usr/lib/jvm/java-17-openjdk-amd64/lib/libawt_xawt.so
    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)
    at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
    at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:384)
    at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:228)
    at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:170)
    at java.base/jdk.internal.loader.NativeLibraries.findFromPaths(NativeLibraries.java:311)
    at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:281)
    at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2398)
    at java.base/java.lang.Runtime.loadLibrary0(Runtime.java:818)
    at java.base/java.lang.System.loadLibrary(System.java:1989)
    at java.desktop/java.awt.Toolkit$2.run(Toolkit.java:1392)
    at java.desktop/java.awt.Toolkit$2.run(Toolkit.java:1390)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
    at java.desktop/java.awt.Toolkit.loadLibraries(Toolkit.java:1389)
    at java.desktop/java.awt.Toolkit.initStatic(Toolkit.java:1427)
    at java.desktop/java.awt.Toolkit.<clinit>(Toolkit.java:1401)
    at java.desktop/java.awt.Component.<clinit>(Component.java:624)
    at HardwareSimulatorMain.main(Unknown Source)

我不明白似乎是什么问题以及为什么它(Unknown Source)在最后陈述。

在网上寻找解决方案时,我看到这篇文章中的 openjdk 可能有问题。我也找到了这篇文章,但它对我也没有多大帮助。

我是一个相对较新的 Linux 用户,目前在 pop OS 上。

我真的很想得到一些帮助,因为我不确定我应该怎么做才能解决问题以及如何继续课程

提前致谢。

4

1 回答 1

0

不是 linux 用户,但在这些情况下有用的策略是谷歌错误消息的第一行(“线程中的异常“main”java.lang.UnsatisfiedLinkError:无法加载库:/usr/lib/jvm/java- 17-openjdk-amd64/lib/libawt_xawt.so"),它提供了几个提示。其中之一是安装缺少的库,即:“sudo apt install openjdk-17-jdk”

于 2021-12-04T19:12:20.897 回答