首页 文章

Ubuntu 16.04上的JavaFX媒体播放器

提问于
浏览
2

我尝试使用javafx媒体播放器播放简单的mp3文件,并且在Windows上一切运行顺利,Ubuntu 16.04上的相同代码如何导致此错误:

Application start方法中的异常线程“main”中的异常java.lang.RuntimeException:com.sun.javafx.application中的com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:917)的Application start方法中的异常.LauncherImpl.lambda $ launchApplication $ 155(LauncherImpl.java:182)at java.lang.Thread.run(Thread.java:745)引起:MediaException:UNKNOWN:com.sun.media.jfxmedia.MediaException:无法创建播放器! :com.sun.media.jfxmedia.MediaException:无法创建播放器! at javafx.scene.media.MediaException.exceptionToMediaException(MediaException.java:146),位于javafx.scene.media.MediaPlayer的javafx.scene.media.MediaPlayer.init(MediaPlayer.java:511) . (MediaPlayer.java:414)在Test.sst.(Test.java:24)com.sun.javafx.application.LauncherImpl.lambda $ launchApplication1 $ 162(LauncherImpl.java:863)at com.sun.javafx.application.PlatformImpl.lambda $ runAndWait $ 175(PlatformImpl .java:326)com.sun.javafx.application.PlatformImpl.lambda $ null $ 173(PlatformImpl.java:295),位于com.sun.javafx.application.PlatformImpl的java.security.AccessController.doPrivileged(Native Method) . lambda $ runLater $ 174(PlatformImpl.java:294)at com.sun.glass.ui.InvokeLaterDispatcher $ Future.run(InvokeLaterDispatcher.java:95)at com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method) at com.sun.glass.ui.gtk.GtkApplication.lambda $ null $ 49(GtkApplication.java:139)... 1更多引起:com.sun.media.jfxmedia.MediaException:无法创建播放器! at com.sun.media.jfxmediaimpl.NativeMediaManager.getPlayer(NativeMediaManager.java:274)at com.sun.media.jfxmedia.MediaManager.getPlayer(MediaManager.java:118)at javafx.scene.media.MediaPlayer.init(MediaPlayer) .java:467)......还有11个

我不认为我犯了任何错误,有没有人在ubuntu下有类似的问题,因为我不知道是什么导致这个 .

public class Test extends Application {

public static void main(String[] args) {
    launch(args);

}


@Override
public void start(Stage primaryStage) throws Exception {
    String musicFile = "/home/wrongway/Downloads/aaa.mp3";     // For example

    Media sound = new Media(new File(musicFile).toURI().toString());
    //  Media sound = new Media(musicFile.toString());
    System.out.println(musicFile.toString());
    MediaPlayer mediaPlayer = new MediaPlayer(sound);
    mediaPlayer.play();
}

}

2 回答

  • 1

    我的坏人,直到现在我才知道ubuntu 16.04不支持javafx 1.8的操作系统 .

    我很抱歉!

  • 1

    我遇到了同样的问题 . 事实证明, Ubuntu 16.04 下的 JavaFX 不支持 MP3 文件,但适用于 WAV files .

相关问题