Почему я получаю InvocationTargetException с моим кодом JavaFX? - PullRequest
0 голосов
/ 11 декабря 2018

У меня проблемы с получением плеера JavaFX для работы.Я получаю сообщение об ошибке, в котором говорится java.lang.reflect.InvocationTargetException.Я исследовал это сообщение об ошибке и нашел сообщение, в котором говорится, что я звоню в 2 разных класса с одинаковыми именами.Однако я не могу найти, какие они классы.

У кого-нибудь есть опыт работы с этим?Я думаю, что сообщение используется только с API JavaFx.Вот код:

import java.io.File;
import javafx.application.Application;
import javafx.beans.binding.Bindings;
import javafx.beans.property.DoubleProperty;
import javafx.scene.Scene;
import javafx.scene.layout.StackPane;
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
import javafx.scene.media.MediaView;
import javafx.scene.paint.Color;
import javafx.stage.Stage;

public class Broadcaster extends Application 
{

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



@Override
  public void start(Stage primaryStage) {
    String workingDir = System.getProperty("C:/Users/Tito/Desktop");
    final File f = new File(workingDir, "Jeremy.wmv");

    final Media m = new Media(f.toURI().toString());
    final MediaPlayer mp = new MediaPlayer(m);
    final MediaView mv = new MediaView(mp);

    final DoubleProperty width = mv.fitWidthProperty();
    final DoubleProperty height = mv.fitHeightProperty();

    width.bind(Bindings.selectDouble(mv.sceneProperty(), "width"));
    height.bind(Bindings.selectDouble(mv.sceneProperty(), "height")); 



    mv.setPreserveRatio(true);

    StackPane root = new StackPane();
    root.getChildren().add(mv);

    final Scene scene = new Scene(root, 960, 540);
    scene.setFill(Color.BLACK);

    primaryStage.setScene(scene);
    primaryStage.setTitle("Full Screen Video Player");
    primaryStage.setFullScreen(true);
    primaryStage.show();

    mp.play();
  }
}

// This code was found on 
http://www.java2s.com/Code/Java/JavaFX/FullScreenVideoPlayer.htm

1 Ответ

0 голосов
/ 11 декабря 2018

Проблема заключалась в моем расположении файла.По какой-то причине код не ищет файл в String workingDir = System.getProperty ("C: / Users / Tito / Desktop");Он ищет его в C: \ Users \ Tito \ eclipse-workspace \ Broadcast.Я должен выяснить почему.Когда я переместил медиа-файл в C: \ Users \ Tito \ eclipse-workspace \ Broadcast, он воспроизводил аудио, но не видео.

...