web-dev-qa-db-fra.com

Créer et déployer une application javafx à l'aide de Java11

J'ai suivi les étapes de https://blog.jetbrains.com/idea/2013/03/packaging-javafx-2-applications-in-intellij-idea-121/

mais quand j'essaie de créer des artefacts comme dans la dernière étape, j'obtiens cette erreur

enter image description here

Erreur: Java FX Packager: impossible de créer un artefact - fx: deploy n'est pas disponible dans ce JDK

enter image description here

Je sais que JavaFX a été supprimé de Java11, ma question est de savoir ce que je dois faire pour créer un .jar ou .exe

voici une Bonjour l'application du monde pour des tests rapides.

13
humazed

Malheureusement, vous ne pourrez pas créer votre pot en utilisant JFX11 de cette façon, car apparemment le packager a été supprimé du SDK JFX. Il y a de l'espoir qu'il sera implémenté dans une future version (peut-être 12). Lire ici pour plus de détails:

https://youtrack.jetbrains.com/issue/IDEA-200721 contenant les 2 liens suivants:

https://bugs.openjdk.Java.net/browse/JDK-821278

https://openjdk.Java.net/jeps/34

En tant que solution temporaire, vous pouvez simplement utiliser/rétrograder vers la version 10 qui inclut toujours le packager nécessaire.

3

L'utilisation de l'option d'exportation JavafX JAR ne fonctionne plus dans Intelij. Vous pouvez l'exporter comme un bocal ordinaire avec "Module Jar-From avec dépendances". Cela exportera un Jar valide, mais pour l'exécuter, vous devez ajouter votre chemin javaFx et vos modules à votre commande.

Après avoir le pot, la commande run devrait ressembler à ceci:

Java --module-path PATH_TO_YOUR_JAVAFX_LIB_FOLDER --add-modules javafx.controls,javafx.fxml,javafx.graphics,javafx.web -jar yourJar.jar

J'ai fait un tutoriel youtube avec ceci: https://youtu.be/HGHu-SzL-5E

2
Barosanu240