Partage
  • Partager sur Facebook
  • Partager sur Twitter

JavaFX avec Intellij IDEA

Problèmes lors de l'utilisation du MediaView

    27 octobre 2020 à 17:53:39

    Bonsoir tout le monde. Pour m'exercer j'essaie de faire un simple lecteur vidéo mais je n'arrive pas à exécuter mon code pourtant il y a aucun problème lors de la compilation. Je pense qui c'est lié à l'IDE (Intellij IDEA) car je n'ai aucun problème avec Netbeans.

    Voilà le code:

    package sample;
    
    import javafx.application.Application;
    import javafx.scene.Scene;
    import javafx.scene.layout.StackPane;
    import javafx.scene.layout.VBox;
    import javafx.scene.media.Media;
    import javafx.scene.media.MediaPlayer;
    import javafx.scene.media.MediaView;
    import javafx.stage.Stage;
    
    import java.net.URL;
    
    public class Main extends Application {
    
        @Override
        public void start(Stage primaryStage) {
    
            StackPane root = new StackPane();
    
            VBox box = new VBox();
    
            URL maVideo = getClass().getResource("video.mp4");
            Media media = new Media(maVideo.toString()); //Erreur ici apparemment
    
            MediaPlayer mediaPlayer = new MediaPlayer(media);
            mediaPlayer.setAutoPlay(true);
    
            MediaView mediaView = new MediaView(mediaPlayer);
    
            box.getChildren().add(mediaView);
            root.getChildren().add(box);
    
            Scene scene = new Scene(root, 800, 600);
    
            primaryStage.setTitle("Hello World!");
            primaryStage.setScene(scene);
            primaryStage.show();
        }
    
    
        public static void main(String[] args) {
            launch(args);
        }
    }
    

    Voici le message d'erreur:

    "C:\Program Files\Java\jdk-14.0.1\bin\java.exe" --module-path C:\javafx-sdk-14.0.1\lib --add-modules javafx.controls,javafx.fxml --add-modules javafx.base,javafx.graphics --add-reads javafx.base=ALL-UNNAMED --add-reads javafx.graphics=ALL-UNNAMED "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2020.2.1\lib\idea_rt.jar=25587:C:\Program Files\JetBrains\IntelliJ IDEA 2020.2.1\bin" -Dfile.encoding=UTF-8 -classpath C:\Users\nzefe\IntelliJIDEAProjects\sample_player\out\production\sample_player;C:\javafx-sdk-14.0.1\lib\src.zip;C:\javafx-sdk-14.0.1\lib\javafx-swt.jar;C:\javafx-sdk-14.0.1\lib\javafx.web.jar;C:\javafx-sdk-14.0.1\lib\javafx.base.jar;C:\javafx-sdk-14.0.1\lib\javafx.fxml.jar;C:\javafx-sdk-14.0.1\lib\javafx.media.jar;C:\javafx-sdk-14.0.1\lib\javafx.swing.jar;C:\javafx-sdk-14.0.1\lib\javafx.controls.jar;C:\javafx-sdk-14.0.1\lib\javafx.graphics.jar sample.Main

    Exception in Application start method

    java.lang.reflect.InvocationTargetException

    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

    at java.base/java.lang.reflect.Method.invoke(Method.java:564)

    at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:464)

    at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:363)

    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

    at java.base/java.lang.reflect.Method.invoke(Method.java:564)

    at java.base/sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:1051)

    Caused by: java.lang.RuntimeException: Exception in Application start method

    at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:900)

    at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:195)

    at java.base/java.lang.Thread.run(Thread.java:832)

    Caused by: java.lang.IllegalAccessError: class com.sun.media.jfxmediaimpl.NativeMediaManager (in unnamed module @0xdca147e) cannot access class com.sun.glass.utils.NativeLibLoader (in module javafx.graphics) because module javafx.graphics does not export com.sun.glass.utils to unnamed module @0xdca147e

    at com.sun.media.jfxmediaimpl.NativeMediaManager.lambda$new$0(NativeMediaManager.java:110)

    at java.base/java.security.AccessController.doPrivileged(AccessController.java:554)

    at com.sun.media.jfxmediaimpl.NativeMediaManager.<init>(NativeMediaManager.java:107)

    at com.sun.media.jfxmediaimpl.NativeMediaManager$NativeMediaManagerInitializer.<clinit>(NativeMediaManager.java:78)

    at com.sun.media.jfxmediaimpl.NativeMediaManager.getDefaultInstance(NativeMediaManager.java:90)

    at com.sun.media.jfxmedia.MediaManager.canPlayProtocol(MediaManager.java:78)

    at com.sun.media.jfxmedia.locator.Locator.<init>(Locator.java:239)

    at javafx.scene.media.Media.<init>(Media.java:393)

    at sample.Main.start(Main.java:24)

    at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$9(LauncherImpl.java:846)

    at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runAndWait$12(PlatformImpl.java:455)

    at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)

    at java.base/java.security.AccessController.doPrivileged(AccessController.java:391)

    at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)

    at javafx.graphics/com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)

    at javafx.graphics/com.sun.glass.ui.win.WinApplication._runLoop(Native Method)

    at javafx.graphics/com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)

    ... 1 more

    Exception in thread "Thread-2" java.lang.NullPointerException

    Exception running application sample.Main

    Process finished with exit code 1

    • Partager sur Facebook
    • Partager sur Twitter
      27 octobre 2020 à 18:35:31

      il manque peut-être un import javafx.graphics; ?
      • Partager sur Facebook
      • Partager sur Twitter
        27 octobre 2020 à 20:06:36

        umfred a écrit:

        il manque peut-être un import javafx.graphics; ?


        Je ne pense pas puisque l'IDE ne reconnais pas la classe javafx.graphics
        • Partager sur Facebook
        • Partager sur Twitter

        JavaFX avec Intellij IDEA

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown