Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Eclipse 找不到声音文件_Eclipse_Audio_Filepath - Fatal编程技术网

Eclipse 找不到声音文件

Eclipse 找不到声音文件,eclipse,audio,filepath,Eclipse,Audio,Filepath,我正在尝试流式传输.wav文件。我得到了这个错误: java.io.FileNotFoundException:\sounds\player-bullet.wav(系统找不到指定的文件) 文件结构为src/sounds/player-bullet.wav。 java文件位于src中。代码如下: AudioInputStream ais = AudioSystem.getAudioInputStream(new File("/sounds/player-bullet.wav")); 但在同一个

我正在尝试流式传输.wav文件。我得到了这个错误:

java.io.FileNotFoundException:\sounds\player-bullet.wav(系统找不到指定的文件)

文件结构为src/sounds/player-bullet.wav。 java文件位于src中。代码如下:

AudioInputStream ais = AudioSystem.getAudioInputStream(new  File("/sounds/player-bullet.wav"));
但在同一个文件中,我加载了一个带有此代码的图像,它可以工作:

shipImage = new Image("/images/player.png");
文件结构为src/images/player.png。 此代码在eclipse中工作:

AudioInputStream ais = AudioSystem.getAudioInputStream(new File("./src/sounds/player-bullet.wav"));

但是当我把它做成一个jar文件时,src文件并不包括在内。因此,当文件位于jar中时,这将不起作用。

您将问题标记为JavaFX,但它似乎与JavaFX无关。您的应用程序是否扩展?如果不是,则它不是JavaFX应用程序,播放声音的方法不同于JavaFX或。(我没有使用Java sound
AudioSystem
,因此我无法对此发表评论)。它确实扩展了JavafxI,编辑了标记以删除JavaFX引用。您可能想使用,但可能不需要文件对象。问题可能是重复的:。我使用的方法播放声音,它只是找不到jar文件中的文件。这是因为它不是真正的文件,而是jar文件中的资源。这就是为什么您不使用
文件
,而是按照建议使用
getResourceAsStream()
。有关更多信息,请阅读:。检查该文件是否也在jar文件中您期望的位置(通过
jar-tvf.jar
)。