История изменений
Исправление
Legioner,
(текущая версия)
:
Что это дает на деле, в том виде в котором оно есть?
Например одна либа не сможет залезть в ресурсы другой либы (поэтому, к примеру, flyway принципиально не может работать с жава модулями в текущем виде). Одна либа не сможет рефлексией расковырять другую либу, если только ей это не разрешат.
В общем куча нетривиальных способов получить Error во имя чистоты концепций.
В целом по-моему это больше для защиты кишков JVM делалось. Чтобы прекратили туда лазить. И разработчики наконец-то могли начать что-то менять не боясь поломать какой-нибудь ломбок.
Из полезного - можно убрать public-классы из пакета impl своей либы. А то щас по сути в любой либе в public лежат куча классов, которые на самом деле не подразумевались как public.
Исходная версия
Legioner,
:
Что это дает на деле, в том виде в котором оно есть?
Например одна либа не сможет залезть в ресурсы другой либы (поэтому, к примеру, flyway принципиально не может работать с жава модулями в текущем виде). Одна либа не сможет рефлексией расковырять другую либу, если только ей это не разрешат.
В общем куча нетривиальных способов получить Error во имя чистоты концепций.
В целом по-моему это больше для защиты кишков JVM делалось. Чтобы прекратили туда лазить. И разработчики наконец-то могли начать что-то менять не боясь поломать какой-нибудь ломбок.