Есть ли способ переопределить модуль Java9, предоставляя права на экспорт / открытие только определенному пакету в модуле «destination»? - PullRequest
1 голос
/ 09 апреля 2019

instrumentaton.redefineModule() дает возможность экспортировать / открывать пакет (ы) конкретного модуля JPMS в другой модуль (и).Но есть ли способ сделать то же самое, но ТОЛЬКО для определенного пакета в модуле назначения (модуль, в который экспортируется пакет).

Прямо сейчас

extraExports / extraOpens - это карта с ключом: значение «Пакет для экспорта в исходном модуле»: набор модулей для экспорта / открытия в

Что мне понадобится Карта с ключом

: значение «Пакет для экспорта в исходном модуле»: Карта с ключом: Значение «Пакет в модуле назначения»: Модули для экспорта / открытия для

Я знаючто сейчас такой вещи нет, но основной вопрос: Есть ли положение для переопределения уровня пакета для Модуля.

Немного больше информации : IЯ пишу Java-агент, который еще не является модульным.Таким образом, они загружаются в хранилище безымянных модулей (поскольку я не могу использовать modulepath из-за ограничений проекта).Я хочу, чтобы другие модули экспортировали / открывали пакеты для «только» моих классов агентов, а не для всего безымянного модуля.Написание специального загрузчика классов для загрузки моего класса агента и предоставление привилегий только новым загрузчикам классов без имени-модуля, вероятно, является одним из решений, но затем, прежде чем я попытаюсь это, хочу проверить, есть ли другое решение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...