java - 如何将音乐文件包含在 .jar 文件中?

标签 java embedded-resource javasound

我的 netbeans 有问题。我制作了一个只播放背景音乐的程序。当我从 netbeans IDE 运行该程序时,它会随着音乐运行而不会出现任何错误。但是,当我尝试运行 .jar 文件时,程序可以在没有音乐的情况下正常运行。我已经检查了路径一百次,但它不起作用。没有错误,没有任何问题,音乐不是从 .jar 文件中播放的。 为什么会这样?

public static synchronized void playSound(final String url) { 
  new Thread(new Runnable() { 
    public void run() { 
     try { 
        Clip clip = AudioSystem.getClip(); 
        AudioInputStream inputStream; 
        inputStream = AudioSystem.getAudioInputStream(
            this.getClass().getResource(url)); 
        clip.open(inputStream);
        clip.start(); 
     } catch (Exception e) { 
        System.err.println(e.getMessage()); 
     } 
    } 
   }).start(); }

最佳答案

你应该使用 getResourceAsStream(String)要访问这样的文件,您需要确保它们存在于类路径中。

没有任何代码可供查看,我猜您正在尝试使用 FileInputStream 或类似的东西,这是行不通的,因为 jar 文件没有传统文件系统的概念。

关于java - 如何将音乐文件包含在 .jar 文件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13595552/

相关文章:

java - 如何让用户选择一个音频文件并用 Java 播放它

java - 无法点击android中菜单的复选框

java - Maven 无法解决依赖关系

c# - 资源嵌入在多个 Satellite Assembly 中

c# - 来自嵌入图像的 BitmapSource

windows - Windows 如何解释多个 VersionInfo 资源?

java - 如何修复MainActivity无法在片段中转换为android.app.TimePickerDialog$OnTimeSetListener?

java - 单元测试目录是否存在 - Junit

java - 我在哪里可以下载 mp3plugin.jar 以用 Java 代码播放 MP3?

java - 如何播放较长的 AudioClip?