javafx 2 MediaException:MEDIA_UNAVAILABLE将不会加载文件

时间:2013-06-28 16:35:02

标签: java media-player javafx-2 javafx

我正在尝试在javafx2中运行flv文件。我的代码如下:

Media media = new Media("file:///C:/Users/Darren/workspace/player/src/player/football.flv");
MediaPlayer player = new MediaPlayer(media);
MediaView view = new MediaView(player);

root.getChildren().add(view);
Scene scene = new Scene(root, 400, 400, Color.BLACK);
stage.setScene(scene);
stage.show();

player.play();

我收到以下错误:

Caused by: MediaException: MEDIA_UNAVAILABLE : C:\Users\Darren\workspace\player\src\player\football.flv (The system cannot find the file specified)

我在这里查看了类似的帖子。我也尝试将视频文件存储在不同的地方,并尝试了大量不同的访问方式。

该文件的路径是:

C:\Users\Darren\workspace\player\src\player

我错过了这里明显的一切吗?

1 个答案:

答案 0 :(得分:0)

使用文件路径时,最好使用getClass().getResource("/PATH/RELATIVE/TO/SRC").toExternalForm()

在这种情况下,您的代码将必须像这样:

Media media = new Media(getClass().getResource("/player/football.flv").toExternalForm());
MediaPlayer player = new MediaPlayer(media);
player.play();

另外,最好在您的src文件中保留一个Resources文件夹并隔离其中的文件。像这样:

├───src/
│   ├───Other Packages/
│   ├───Resources/
│   │   ├───Sound/
.   .   .
.   .   .