Nous expliquons pourquoi Java 9 a apporté le système de modules
JPMS : en quoi la « classpath-party » pose problème, comment les modules introduisent des frontières de visibilité au niveau du conteneur, ce qu’est
module-info.java et comment travailler avec les directives
module,
exports,
requires,
opens,
uses/
provides. Nous discuterons des avantages (encapsulation, dépendances explicites, sécurité,
jlink), des cas d’usage (y compris
java.base,
java.sql), des subtilités utiles et des erreurs typiques lors d’une migration (un
exports oublié, un
requires manquant, des doublons de noms de modules).