我有一个非常奇怪的问题,我无法解决。
我目前正在制作游戏,我想要游戏中的声音。它应该作为 jar 文件运行,并且从 Eclipse 运行时游戏运行良好。
SoundPlayer 是我在游戏中使用的外部 jar 库的一部分。然后它需要一个名称、一个文件夹并播放声音。声音位于 FTSound 对象类所在文件夹的子文件夹中。我检查了 jar,声音文件包含在内,它们与 eclipse 中的位置相同。现在到我遇到的奇怪问题:
当我通过双击运行 jar 文件时,除了声音之外一切正常。它完全不见了。但是,如果我通过 cmd 启动 jar,声音效果很好。这是完全相同的罐子。
有任何想法吗?非常感谢您的帮助!
使用以下代码播放声音:
public static void playSound(final FTSound sound) {
new Thread(new Runnable() {
@Override
public void run() {
try{
Clip clip = AudioSystem.getClip();
AudioInputStream inputStream = AudioSystem.getAudioInputStream(sound.getClass().getResource(sound.getFolderName() + "/" + sound.getSoundName()));
clip.open(inputStream);
clip.start();
} catch (Exception e) {
e.printStackTrace();
}
}
}).start();
}