【问题标题】:Java.lang.UnsatisfiedLinkError: Can't load library when loading mp3 fileJava.lang.UnsatisfiedLinkError:加载 mp3 文件时无法加载库
【发布时间】:2020-08-16 16:18:03
【问题描述】:

我是 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 中。谁能帮帮我?

【问题讨论】:

  • 您使用的是哪个 JVM 和 JDK?文件C:\Users\Cliente\.jdks\corretto-1.8.0_252\jre\bin\glib-lite.dll 是否存在于您的硬盘上?您的操作系统是什么(Windows,但是是哪一个)?异常是否带有堆栈跟踪?如果有,请在此处添加!您是否可以访问其他 JDK?你能用这些试试你的代码吗?
  • 因为它与音乐文件有关,您需要确定它是否与 jar 一起打包并按照您的情况进行回答。 stackoverflow.com/questions/24347658/…。如果你知道它是用jar打包的,下面是一个很好的资源。 stackoverflow.com/questions/61531317/…

标签: java javafx java-8 media


【解决方案1】:

我认为您的问题与 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 问题,希望对您有所帮助。

【讨论】:

  • 谢谢,是的,看起来这是个问题,因为我使用的是旧的 JDK 8
  • 不客气@Asmoun,谢谢。我很高兴听到这个答案很有帮助。
  • @Asmoun 只是为了澄清,我不关心 JDK 是否旧,它与 Amazon Corretto 的 Java 8 版本有关,但对于 Java 8,你可以找到其他JVM 分发也应该按照上述问题中的建议正常工作。您当然可以切换到最新版本的 Amazon Corretto,如答案中所示。
【解决方案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());

【讨论】:

  • 没有。 javafx.scene.media.Media 构造函数采用 URI 而不是文件路径。如果没有方案,则假定路径是资源路径(即相对于类路径)。
  • 好吧......我梦想获得 50 个互联网点......
  • @EverNight 不用担心 50 分会分给你们两个,所以你们会有 25 分
  • 感谢@Asmoun,但我的回答并不重要。我不认为我应该得到任何分数。 :) 应该花了 5 多分钟检查上下文。其他人得到 100% 是公平的
猜你喜欢
  • 1970-01-01
  • 2013-02-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-01-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多