问题是因为您正在尝试在JavaFX Application线程之外运行JavaFX场景图控件.
在JavaFX应用程序线程中运行所有JavaFX场景图节点.
您可以通过扩展JavaFX Application类并重写start()方法来启动JavaFX线程.
public class Main extends Application {
@Override
public void start(Stage primaryStage) {
Media pick = new Media("put.mp3"); // replace this with your own audio file
MediaPlayer player = new MediaPlayer(pick);
// Add a mediaView, to display the media. Its necessary !
// This mediaView is added to a Pane
MediaView mediaView = new MediaView(player);
// Add to scene
Group root = new Group(mediaView);
Scene scene = new Scene(root, 500, 200);
// Show the stage
primaryStage.setTitle("Media Player");
primaryStage.setScene(scene);
primaryStage.show();
// Play the media once the stage is shown
player.play();
}
public static void main(String[] args) {
launch(args);
}
}