Загрузить класс в войне в глобальный classpath (Wildfly)
Я хочу развернуть файл war на сервере Wildfly 10 и открыть класс для глобального пути классов. Я хочу иметь возможность использовать этот класс в других военных файлах.
Вы знаете, возможно ли это во время развертывания?
С наилучшими пожеланиями Алекс
1 ответ
Различные военные файлы в deployments
каталог разделен разными загрузчиками классов. Следовательно, вы не можете получить доступ из одной войны классов из другой войны.
Если вам нужна "глобальная" функциональность, доступная для всех развертываний, вы можете добавить новый модуль. Настройте и вызовите следующую команду:
./jboss-cli.sh -c --command="module add --name=<your-module> --resources=<path-to-file>/<your-jar>.jar --dependencies=<your-dependencies-comma-separated>"
Это создаст новую папку под $JBOSS_HOME\modules
с module.xml
файл рядом с вашей банкой. Для получения дополнительной информации о добавлении модулей посмотрите, например, здесь.
Затем добавьте зависимость от этого нового модуля в два файла war, либо добавив имя модуля в Class-Path
запись в вашем MANIFEST.MF
файл или путем предоставления выделенного jboss-deployment-structure.xml
файл (для получения дополнительной информации см. здесь).