我的 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/