Разные каталоги lib JBoss - PullRequest
10 голосов
/ 17 июня 2010

Существует несколько различных каталогов lib, которые использует JBoss (5.1.0): я могу найти jboss / lib, jboss / lib / endorsed, jboss / common / lib, jboss / server / default / lib и, конечно, jboss/ server / default / deploy / myapp / WEB-INF / lib (я что-то упустил?).

Из вышесказанного я знаю, что мне нужно использовать последний (WEB-INF / lib) дляпоставить любые банки, которые нужны моему приложению.А как насчет всех остальных?Для чего они нужны и что мне там поставить?Зачем помещать его туда, а не в WEB-INF / lib?

Спасибо!

1 Ответ

19 голосов
/ 18 июня 2010

Другие папки предназначены для разных типов общих библиотек.Например, если у вас есть 10 приложений, использующих один и тот же драйвер БД, на самом деле нет причин хранить по одной банке драйвера БД на приложение (т.е. 10 банок).В этом случае вы можете просто поместить его в jboss/server/<server config>/lib.

  • jboss/server/<server config>/lib: все библиотеки здесь разделены между всеми приложениями в данной конфигурации сервера
  • jboss/common/lib: разделены междувсе конфигурации сервера
  • jboss/lib: это библиотеки для самого сервера (если я не ошибаюсь, они также находятся в пути к классу вашего приложения)
  • jboss/lib/endorsed: это то же самое, что и выше, только если вы поместите здесь lib, он всегда будет найден перед аналогичным lib в jboss / lib.Идея аналогична одобренному механизму переопределения стандартов JDK
...