Préambule :
- Ce TP est en fait un tutoriel qui présente comment mettre en place l'environnement logiciel pour créer un projet java+javafx avec IDEA, étape nécessaire et préalable pour faire le TP casse-brique.
- Tout est basé sur un ordinateur avec une distribution type debian/ubuntu, un SDK Java du type openjdk+openjfx 11 ou bien 17, et l'IDE Intellij IDEA.
- Ces hypothèses sont valables notamment pour les machines du département.
- Si vous utilisez votre propre ordinateur sous windows/mac, les procédures d'installation logicielle seront relativement semblables mais avec des différences notables, par exemple dans les chemins d'accès aux éléments installés.
1°/ Mise en place logicielle
1.1°/ java et openjfx 11/17
IMPORTANT : cette mise en place n'est valable que pour votre ordinateur personnel. Les machines du département ont déjà le JDK 11 d'installé.
Pour la v11 :
- La v11 est normalement disponible dans les dépots debian/ubuntu.
- Il suffit donc en tant que root d'installer les paquets openjdk-11-jdk et openjfx:
apt-get install openjdk-11-jdk openjfx
- Le compilateur et la JVM sont installés et se trouvent dans /usr/lib/jvm/java-11-openjdk-amd64/bin
- Les bilbliothèques javafx sont dans /usr/share/openjfx/lib
- Ces informations sont nécessaires pour configurer IDEA.
Pour la v17 :
- Pour java, il suffit d'installer le paquet openjdk-17-jdk
apt-get install openjdk-17-jdk
- Pour openjfx, le plus simple est d'aller sur le site qui distribue openjfx : https://gluonhq.com/products/javafx/
- Il suffit de choisir dans les listes déroulantes : v17 et l'OS qui vous convient.
- Attention ! Il faut ensuite bien télécharger la version SDK. Vous obtenez une archive .zip
- Sous linux, en tant que root, décompacter l'archive dans /usr/share/
- Vous obtenez un répertoire du style /usr/share/javafx-sdk-17.0.10.
- Lors de la configuration d'un projet IDEA, c'est ce répertoire qu'il faut choisir (plutôt que /usr/share/openjfx)
1.2°/ Créer l'arborescence du projet
- Il suffit de créer un répertoire pour le projet, puis un sous répertoire pour les sources. Ce dernier peut être vide, ou bien déjà contenir des fichiers, par exemple le canevas de code du casse-brique.
- Exemple pour le casse-brique :
# télécharger le canevas => cassebrique-canevas.tgz
mkdir CasseBrique
mv cassebrique-canevas.tgz CasseBrique
cd CasseBrique
tar zxf cassebrique-canevas.tgz
2°/ Le projet IDEA
2.1°/ Création d'un nouveau projet, incluant des sources existantes
Remarque : ce tutoriel se base sur une version 11 Java & JavaFx, avec un projet dans le répertoire CasseBrique contenant les sources du canevas. La démarche est exactement la même pour des versions plus récentes, excepté que les répertoires seront différents.
- Lancer IDEA,
- Cliquer sur New Project from existing sources
- Dans la fenêtre qui apparaît :
- choisir le répertoire CasseBrique
- cliquer plusieurs fois sur le bouton Next, jusqu'à obtenir la fenêtre permettant de choisir le SDK. Choisir le 11 puis cliquer sur Next et enfin Finish
- La fenêtre générale du projet s'ouvre avec à gauche l'aborescence du projet et au centre le contenu du fichier couramment édité.
- Développer le répertoire src et cliquer sur CasseBrique
- Normalement, toutes les instructions en rapport avec javafx ne sont pas reconnues par IDEA et apparaissent en rouge, comme dans la figure ci-dessous
- Il faut donc configurer IDEA pour qu'il reconnaisse les classes javaFx mais aussi pour qu'il permette de construire l'application et de la lancer correctement.
2.2°/ Configuration du projet
- La configuration se fait en 3 étapes :
- configurer les paquets et sources de javafx comme faisant partie des bibliothèques utilisables par IDEA,
- mettre javaFx en dépendance du projet,
- création d'une configuration de compilation/exécution.
ATTENTION !
|
2.2.1°/ étape 1 : chemin d'accès à javafx
- Cliquer sur le menu File puis Project Structure.
- Dans la fenêtre qui apparaît, cliquer sur Global Libraries dans le menu de gauche, en bas.
|
|
|
|
|
|
|
|
|
![]() |
- Cliquer sur OK pour finaliser et revenir à la fenêtre principale.
- Le code en rouge a disparu.
2.2.2°/ étape 2 : mettre javafx en dépendance du projet
- Cliquer sur le menu File puis Project Structure.
|
|
|
|
|
|
|
|
- Cliquer sur OK pour finaliser et revenir à la fenêtre principale.
- Le code en rouge a disparu.
2.2.3°/ étape 3 : configuration de compilation/exécution
|
|
|
|
|
|
|
|
|
|
- Un nouveau champ de saisie apparaît, entre le JDK utilisé et le nom de la classe principale (cf. image ci-dessous)
- Dans ce champ copier/coller les options suivantes :
--module-path /usr/share/openjfx/lib --add-modules=javafx.base,javafx.controls,javafx.fxml,javafx.graphics,javafx.media,javafx.swing,javafx.web
ATTENTION ! /usr/share/openjfx/lib doit être remplacé par le répertoire dans lequel vous avez mis les .jar javafx (= le même répertoire que vous avez indiqué lors de l'ajout dans Global Libraries à l'étape 1)
- Terminer la configuration en cliquant sur OK
- Cliquer sur la flèche verte en haut à droite, à côté de CasseBrique. Cela compile le projet puis lance l'exécution.
- Normalement, l'application se lance.