Java jar 文件中的音频无法播放

Java audio doesn't play in jar file

我用 netbeans 创建了一个带有 3 个按钮的 JFrame,让我可以启动 wav 声音文件循环播放或停止播放。如果我从 netbeans 启动它,它工作得很好,但如果我启动 jar 文件,它就不起作用 怎么了?

这里是代码

    public class NewJFrame extends javax.swing.JFrame {

    /**
     * Creates new form NewJFrame
     */

    private AudioData audiodata;
    private AudioDataStream audiostream;
    private ContinuousAudioDataStream continuousaudiostream;

    public NewJFrame() throws FileNotFoundException, IOException {
        initComponents();

        FileInputStream fis = new FileInputStream("boing.wav");
        AudioStream audioStream = new AudioStream(fis);
        audiodata = audioStream.getData();
        audiostream = null;
        continuousaudiostream = null;
    }

    public void play() {
        audiostream = new AudioDataStream(audiodata);
        AudioPlayer.player.start(audiostream);
    }

    public void loop() {
        continuousaudiostream = new ContinuousAudioDataStream(audiodata);
        AudioPlayer.player.start(continuousaudiostream);
    }

    public void stop() {
        if (audiostream != null)
            AudioPlayer.player.stop(audiostream);
        if (continuousaudiostream != null)
            AudioPlayer.player.stop(continuousaudiostream);
    }

   }

我的 3 个按钮调用了 play()、loop() 和 stop() 方法。我的 "boing.wav" 文件在我的项目文件夹中,我也尝试将其放入 /src/"boing.wav" 但无法启动 jar 文件。 我该怎么办?

这可能与您的 jdk 或声卡有关。代码看起来没问题,不过。尝试卸载并重新安装 jdk。此外,在不同的系统上测试应用程序,让我们知道响应是什么。