You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaFX播放音频报错:gstreamer-lite库依赖缺失问题

解决JavaFX Media加载gstreamer-lite.dll失败的问题

问题根源

该错误由两个核心原因导致:

  1. Windows系统缺少gstreamer-lite.dll依赖的Microsoft Visual C++ Redistributable运行库;
  2. Maven依赖未正确引入对应平台的JavaFX Media原生库包,默认依赖仅包含Java层代码,无适配Windows的原生库。

解决步骤

1. 安装MSVC运行库

gstreamer-lite.dll依赖Visual Studio 2022版本的MSVC运行库,需安装对应系统架构的版本:

  • 从微软官方渠道下载适配你系统(x64/x86)的Microsoft Visual C++ Redistributable for Visual Studio 2022;
  • 安装完成后重启系统,确保运行库生效。

2. 修正Maven依赖配置

方案一:添加平台专属依赖

修改pom.xml,为javafx-media添加Windows平台分类器,确保下载对应原生库:

<dependencies>
    <dependency>
        <groupId>org.openjfx</groupId>
        <artifactId>javafx-controls</artifactId>
        <version>21</version>
    </dependency>
    <dependency>
        <groupId>org.openjfx</groupId>
        <artifactId>javafx-media</artifactId>
        <version>21</version>
    </dependency>
    <!-- Windows x64平台原生库 -->
    <dependency>
        <groupId>org.openjfx</groupId>
        <artifactId>javafx-media</artifactId>
        <version>21</version>
        <classifier>win</classifier>
    </dependency>
</dependencies>

方案二:使用javafx-maven-plugin(跨平台推荐)

添加插件自动处理平台依赖,无需手动指定分类器:

<build>
    <plugins>
        <plugin>
            <groupId>org.openjfx</groupId>
            <artifactId>javafx-maven-plugin</artifactId>
            <version>0.0.8</version>
            <configuration>
                <mainClass>com.algorithms.maze.App</mainClass>
            </configuration>
        </plugin>
    </plugins>
</build>

之后用mvn javafx:run命令启动程序,插件会自动下载并加载对应平台的原生库。

3. 清理缓存并重建项目

  • 删除缓存目录C:\Users\gc\.openjfx\cache\21+31,避免损坏的缓存文件干扰;
  • 执行mvn clean install重新下载依赖并构建项目。

4. 确认音频路径(可选)

你的音频加载代码路径getResource("/audio/maze-sound.wav")是正确的,符合项目资源结构,无需调整。

内容的提问来源于stack exchange,提问作者Giorgi Chapidze

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 05:17:26