Le message d'erreur suivant s'affiche: Java 11 a exclu JavaFX de la dernière version.
Error: JavaFX runtime components are missing, and are required to run this application
Alors, comment puis-je ajouter JavaFX à Eclipse dans Java 11? Merci.
Suivant le Getting Started Guide , voici les étapes nécessaires à l'exécution de JavaFX 11 à partir d'Eclipse.
1 Installez Eclipse 2018-09 à partir de ici .
2 Installez JDK 11 à partir de ici .
3 Ajoutez Java 11 en tant que JRE installé à Eclipse: Eclipse -> Fenêtre -> Préférences -> Java -> JRE installés -> Ajouter.
4 Téléchargez JavaFX 11 ea à partir de ici .
5 Créez une bibliothèque utilisateur: Eclipse -> Fenêtre -> Préférences -> Java -> Chemin de construction -> Bibliothèques utilisateur -> Nouveau. Nommez-le JavaFX11 et incluez les fichiers JAR dans le dossier lib de JavaFX 11-ea.
6 Créez un projet Java. Vous n'avez pas besoin d'ajouter une classe de chemin de module. Assurez-vous de sélectionner Java 11 et d’ajouter la bibliothèque JavaFX11 au chemin modulepath du projet.
7 Ajoutez un package javafx11
et la classe d'application principale HelloFX
:
package javafx11;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class HelloFX extends Application {
@Override
public void start(Stage stage) {
String version = System.getProperty("Java.version");
Label l = new Label ("Hello, JavaFX 11, running on "+version);
Scene scene = new Scene (new StackPane(l), 300, 200);
stage.setScene(scene);
stage.show();
}
public static void main(String[] args) {
launch();
}
}
Notez que l'éditeur ne devrait pas se plaindre des classes JavaFX, car nous avons inclus la bibliothèque utilisateur.
8 Ajoutez des arguments d'exécution. Modifiez la configuration d'exécution du projet et ajoutez ces arguments VM:
--module-path C:\Users\<user>\Downloads\javafx-sdk-11\lib --add-modules=javafx.controls
9 Enfin, exécutez le projet. Cela devrait bien fonctionner.
@ José Pereda a parfaitement raison, tout fonctionne comme il se doit. Je l'ai testé avec la version Eclipse 2018-12. Donc, après avoir téléchargé le IDE ( https://www.Eclipse.org/downloads/packages/release/2018-12/r/Eclipse-ide-Java-developers ) et installé le (fx) clipse, vous devriez pouvoir créer un élément "Projet JavaFx" dans votre espace de travail.
L'étape suivante consiste à supprimer le "JavaFX SDK" du module "Classpath" (Propriétés -> Chemin de construction Java -> Bibliothèques) et à ajouter la dépendance Maven afin de supprimer les erreurs de compilation:
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-controls</artifactId>
<version>11.0.1</version>
</dependency>
La dernière étape consiste à ajouter un argument VM à "Run Configuration" de votre classe JavaFX pour le démarrage de l'application (Run Configurations -> onglet Arguments -> arguments VM):
--module-path C:\path to the OpenJFX\javafx-sdk-11.0.1\lib --add-modules=javafx.controls
et cela devrait fonctionner après l'avoir exécuté. Bien sûr, vous devez télécharger le SDK JavaFX avant cela ( https://gluonhq.com/products/javafx/ ), le décompresser et utiliser le chemin du dossier "lib" dans l'argument VM susmentionné. .