java.lang.UnsatisfiedLinkError:加载mp3文件时无法加载库

时间:2020-05-02 05:35:39

标签: java javafx media

我是Java的新手,我正在尝试使我的javafx应用程序播放声音。我无法创建javafx.scene.media.Media对象,因为不断收到异常。

java.lang.UnsatisfiedLinkError: Can't load library: C:\Users\Cliente\.jdks\corretto-1.8.0_252\jre\bin\glib-lite.dll

这是生成此错误的代码段。

Media sound = new Media(new File("./data/audio/Bomb.mp3").toURI().toString());

我想这是由于我的uri格式错误而产生的,但是我看不出为什么这与我所见过的教程有所不同。我的音频文件位于项目根文件夹内的/ data / audio中。谁能帮我吗?

2 个答案:

答案 0 :(得分:4)

我认为您的问题与 Media 对象的创建无关。

Amazon Corretto for Java 8 不支持 JavaFX。请参阅以下 Github issuethis comment

<块引用>

嗨。 Corretto 8 中的 OpenJFX 8 构建目前处于生命支持状态,我们只计划应用安全补丁和关键修复。在上游,OpenJFX 8 被放弃(参见 https://hg.openjdk.java.net/openjfx)。

<块引用>

推荐的使用 JavaFX 的方法是使用 Corretto 11 并单独引入 OpenJFX,例如具有 Maven 依赖项。最新版本(目前为 14)与 Corretto 11 兼容。

<块引用>

关闭此问题。

请遵循建议的方法,或者使用不同的 Java 发行版。

请参阅此 1 2 SO 问题,我希望它们会有所帮助。

答案 1 :(得分:2)

Media sound = new Media(new File("./data/audio/Bomb.mp3").toURI().toString());
                                                                     ^ issue.

使用

Media sound = new Media(new File("./data/audio/Bomb.mp3").toURI().getPath());