媒体:在JAR中播放WAV文件

时间:2013-03-27 14:03:17

标签: java javafx-2

Media只有一个构造函数 - public Media(java.lang.String source) http://docs.oracle.com/javafx/2/api/javafx/scene/media/Media.html#Media%28java.lang.String%29

此构造函数获取URI作为字符串。我有一个JavaFX项目,并在此项目中放置一个WAV文件。当我将项目部署为JAR时,我可以看到(例如7-Zip)WAV文件也被导出。使用

获取内容没有问题
MyApplicationClass.class.getResourceAsStream("/resources/test.wav").

但是在Media构造函数的已部署JAR中引用此WAV文件的正确URI是什么? URI

new Media("jar:.!/resources/test.wav")

不起作用。 URI "jar:resources/test.wav"也失败了(因为没有对JAR文件的引用)。

有没有人知道正确的URI?

1 个答案:

答案 0 :(得分:7)

试试这个

new Media(MyApplicationClass.class.getResource("/resources/test.wav").toURI().toString())

媒体接受jar uris所以它应该可以正常工作