Skip to content

13. Annexes

13.1. Installation du JDK 21

Le [JDK] ([Java Development Kit]) contient le compilateur [javac] et la machine virtuelle [java]. Plusieurs distributions gratuites existent ; nous utilisons [Eclipse Temurin], du projet [Adoptium], qui se télécharge sur adoptium.net : on choisit la version 21 (LTS), puis l'installateur de son système ([Windows] x64, [macOS], [Linux]).

Sous [Windows], l'installateur [.msi] propose, dans l'écran de personnalisation, l'option « Set JAVA_HOME variable », désactivée par défaut : il faut l'activer. La variable d'environnement [JAVA_HOME] indique où se trouve le [JDK] ; le Maven Wrapper l'utilise pour trouver [Java]. On peut aussi utiliser le gestionnaire de paquets [winget] :

winget install EclipseAdoptium.Temurin.21.JDK

Sous [macOS], on utilise l'installateur [.pkg] de la même page, ou le gestionnaire de paquets [Homebrew] ([brew install --cask temurin@21]). Sous [Linux] ([Ubuntu], par exemple), le paquet [openjdk-21-jdk] des dépôts de la distribution convient :

sudo apt install openjdk-21-jdk

On vérifie l'installation dans une nouvelle console ([PowerShell], invite de commandes ou terminal) :

java -version

qui doit afficher un numéro de version commençant par 21 (par exemple [openjdk version "21.0.10"]). Un [JDK] plus récent (25, par exemple) convient aussi ; un [JDK] plus ancien (17, par exemple) produit, à la compilation, l'erreur [release version 21 not supported].

13.2. Maven et le Maven Wrapper

Il n'y a rien à installer : le dossier [exemples] et le dossier de l'étude de cas contiennent chacun le Maven Wrapper, les scripts [mvnw] ([Linux], [macOS]) et [mvnw.cmd] ([Windows]), avec le fichier [.mvn/wrapper/maven-wrapper.properties], qui indique la version de [Maven] à utiliser (3.9.11). À sa première exécution, le script télécharge cette version de [Maven] et la range dans le dossier personnel de l'utilisateur (dossier [.m2/wrapper]) ; les exécutions suivantes la réutilisent. [Maven] télécharge à son tour les bibliothèques des projets depuis le dépôt central Maven Central, et les garde dans le dossier [.m2/repository]. Il faut donc une connexion Internet lors de la première compilation.

Le Maven Wrapper a besoin de [Java] : il utilise le [JDK] désigné par la variable [JAVA_HOME], ou, à défaut, la commande [java] trouvée dans le chemin ([PATH]). Pour vérifier que tout est en place, on compile tous les exemples, depuis le dossier [exemples] :

./mvnw compile

([.\mvnw compile] sous [Windows]). La commande se termine par [BUILD SUCCESS].

Si l'on préfère installer [Maven] soi-même (maven.apache.org), la commande [mvn] remplace [mvnw] dans toutes les commandes du document.

13.3. Installation de Visual Studio Code

[Visual Studio Code] se télécharge sur code.visualstudio.com. On y ajoute deux extensions (menu Affichage / Extensions, puis rechercher leur nom) :

  • [Extension Pack for Java], de Microsoft : un ensemble d'extensions qui apporte la coloration syntaxique, la complétion et le signalement des erreurs du code [Java], la prise en charge des projets [Maven] (volet Java Projects), le débogueur et la compilation automatique de chaque fichier enregistré ;
  • [Spring Boot Extension Pack], de VMware (marketplace.visualstudio.com) : la complétion des propriétés de [application.properties], la navigation entre les beans et les URL des contrôleurs, et le volet Spring Boot Dashboard, qui liste les applications [Spring Boot] du dossier ouvert et permet de lancer ou d'arrêter chacune d'un clic.

On ouvre le dossier [exemples] ou le dossier de l'étude de cas (menu Fichier / Ouvrir le dossier) ; le terminal intégré (menu Terminal / Nouveau terminal) permet de lancer les commandes [mvnw] sans quitter l'éditeur. La touche F5, dans la classe de démarrage d'une application (celle qui porte [@SpringBootApplication]), exécute l'application sous le contrôle du débogueur.

13.4. Installation de MySQL avec Laragon

[Laragon] (laragon.org) installe sous [Windows] un serveur [MySQL] (ou [MariaDB]) prêt à l'emploi, avec l'outil d'administration [HeidiSQL]. Après installation :

  • le bouton Démarrer tout lance le serveur [MySQL], sur le port 3306 ;
  • l'utilisateur [root] n'a pas de mot de passe : ce sont les valeurs par défaut des propriétés [spring.datasource.*] de l'exemple 28 et de l'étude de cas ;
  • le bouton Base de données ouvre [HeidiSQL], où le menu Fichier / Exécuter un fichier SQL exécute les scripts [dbpersonnes.sql] (exemple 28) et [dbrdvmedecins2.sql] (étude de cas).

Sous [Linux] ou [macOS], on installera [MySQL] ou [MariaDB] avec le gestionnaire de paquets du système, et l'on exécutera les scripts avec le client en ligne de commande [mysql]. Le pilote [JDBC] de [MySQL] fonctionne aussi avec [MariaDB], sans aucun réglage : [Hibernate] affiche seulement au démarrage l'avertissement [HHH000511], sans conséquence (cf. exemple 28).

13.5. Installation de curl

[curl] est livré avec [Windows] 10 et 11, [macOS] et la plupart des distributions [Linux]. Sous [PowerShell], il faut taper [curl.exe] et non [curl] : dans les anciennes versions de [PowerShell], [curl] est un alias d'une autre commande ([Invoke-WebRequest]), dont les options sont différentes.