Разбираем, зачем Java 9 принесла модульную систему
JPMS: чем плох «
classpath-party», как модули вводят границы видимости на уровне контейнера, что такое
module-info.java и как работать с директивами
module,
exports,
requires,
opens,
uses/
provides. Обсудим преимущества (инкапсуляция, явные зависимости, безопасность,
jlink), места применения (включая
java.base,
java.sql), полезные нюансы и типичные ошибки при миграции (забытый
exports, пропущенный
requires, дубли имен модулей).