我使用这种方法在我的班级播放音频,它工作正常。 但出于某种原因,当我将它导出到jar文件时没有任何反应。 我尝试了其他解决方案,但我只是得到空指针异常。 有没有人知道我做错了什么
public void welcome(){
try {
AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(new File("sound/garage1.wav").getAbsoluteFile());
Clip clip = AudioSystem.getClip();
clip.open(audioInputStream);
clip.start();
} catch(Exception ex) {
System.out.println("Error with playing sound.");
ex.printStackTrace();
}
}
答案 0 :(得分:4)
如果你加载这样的文件(而不是作为类的资源),当你执行jar时,包含“garage1.wav”的文件夹“sound”必须位于工作目录中,因为{{1}指向工作目录。例如:如果您通过双击执行jar,则文件夹“sound”必须与jar具有相同的父文件夹。