28 votes

JavaFX 2 en tant que dépendance Maven

Est-il possible de référencer JavaFX 2.0 en tant que dépendance dans Maven dans le fichier pom.xml afin que tout fonctionne correctement ?

J'ai vu dans cette question qu'il est possible d'installer le jfxrt.jar localement, mais idéalement j'aimerais une approche plus simple où la dépendance peut être correctement résolue et téléchargée sans aucun hack local....

19voto

Andreas Stotter Points 191

Voici une solution possible.

Créez un dossier lib dans le répertoire de votre projet et placez jfxrt.jar dans ce dossier.

  com.oracle
  javafx
  2.2.3
  system
  ${project.basedir}/lib/jfxrt.jar

Et si vous voulez construire un fichier jar exécutable, vous avez seulement besoin d'inclure le javafx-maven-plugin. Pour plus d'informations, consultez : lien-vers-github

      com.zenjava
      javafx-maven-plugin
      1.3

          [mettez votre classe principale de l'application ici]

11voto

estiedi Points 374

Non, une telle solution n'existe pas pour le moment. Je doute qu'elle existera un jour, car à partir de Java 1.7 mise à jour 2, JavaFX est installé avec le JVM. Les plans sont d'inclure JavaFX dans le JRE à partir de Java 1.8 (l'année prochaine). À partir de là, vous n'aurez plus du tout besoin de dépendance.

Cependant, vous pouvez déjà utiliser Maven avec JavaFX, car Maven peut appeler des tâches Ant (plugin antrun) et il existe des super tâches Ant disponibles avec la distribution de JavaFX. J'en ai parlé dans mon blog, mais c'est en français : Créer un projet Maven pour JavaFX2. Cela vous guide à travers tout le processus. Néanmoins, si vous ne comprenez pas le français, laissez un commentaire sur l'article et j'essaierai de vous aider ou regardez ici dans le forum Oracle

7voto

Cephalopod Points 4927

L'article de Sergey suggère d'ajouter JavaFX en tant que dépendance système, ce qui ne devrait pas être utilisé. Au lieu de cela, vous pouvez inclure ce qui suit dans votre POM pour installer JavaFX automatiquement.

        install-javafx

                    org.apache.maven.plugins
                    maven-install-plugin
                    2.3.1

                            install-javafx

                                install-file

                            validate

                                ${jfx-runtime}/lib/jfxrt.jar
                                javafx
                                javafx
                                ${jfx-version}
                                jar
                                ${jfx-runtime}/../docs/api.zip

                    maven-resources-plugin

                            install-javafx-bin
                            validate

                                copy-resources

                                ${settings.localRepository}/javafx/javafx
                                false

                                        ${jfx-runtime}

                                            bin/*.dll   

Si vous souhaitez installer les docs api, zippez le contenu du dossier docs/api vers docs/api.zip. Vous n'avez plus qu'à exécuter Maven, avec le profil activé et les propriétés jfx-runtime et jfx-version définies.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X