Système de modules Java 9 : Création, link-time et images d'exécution personnalisées
Java 9 introduit les modules : composants nommés, auto-descriptifs, regroupant code et données.
Améliorations apportées par les modules
- Phase de link-time (édition de liens) : nouvelle phase optionnelle entre compilation et exécution. Permet d'assembler et d'optimiser un ensemble de modules en une image d'exécution personnalisée via l'outil
jlink. - Options supplémentaires pour
javac,jlink,javapour spécifier les chemins de modules (--module-path). - Format JAR modulaire : contient
module-info.classà la racine. - Format JMOD : empaquetage similaire au JAR mais inclut code natif et fichiers de configuration.
Créer un module : com.tutorialspoint.greetings
Étape 1 : Structure des dossiers
C:\JAVA\src\com.tutorialspoint.greetings\
Étape 2 : module-info.java
module com.tutorialspoint.greetings {
}
Ce fichier définit le module. Par convention, il réside dans le dossier portant le nom du module.
Étape 3 : Code source
Fichier C:\JAVA\src\com.tutorialspoint.greetings\com\tutorialspoint\greetings\Java9Tester.java :
package com.tutorialspoint.greetings;
public class Java9Tester {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
Étape 4 : Compilation vers dossier mods
C:\JAVA> javac -d mods/com.tutorialspoint.greetings \
src/com.tutorialspoint.greetings/module-info.java \
src/com.tutorialspoint.greetings/com/tutorialspoint/greetings/Java9Tester.java
Étape 5 : Exécution
C:\JAVA> java --module-path mods -m com.tutorialspoint.greetings/com.tutorialspoint.greetings.Java9Tester
--module-path indique l'emplacement des modules ; -m spécifie le module principal.
Sortie
Hello World!
Ce système de modules est la base de la modularité Java (JPMS), permettant des applications plus légères, sécurisées et maintenables.
Java
- Maîtriser les directives using C# : Imports, alias et directives static
- Maîtriser les opérateurs Java : Types, syntaxe et exemples pratiques
- Maîtriser l'entrée/sortie Java : Afficher, lire et formater vos données
- Commentaires Java : Types, utilisation et bonnes pratiques
- Maîtriser la boucle for améliorée en Java : Syntaxe, exemples et bonnes pratiques
- Maîtriser les chaînes de caractères en Java : Création, méthodes et bonnes pratiques
- Maîtriser les interfaces Java : concepts, implémentation et bonnes pratiques
- Maîtriser le try-with-resources Java : gestion automatique des ressources expliquée
- Annotations Java expliquées : types, placement et exemples pratiques