OSGi (Open Services Gateway Initiative) — спецификация динамической плагинной (модульной) шины для создания Java-приложений, разрабатываемая консорциумом OSGi Alliance. Предназначена для создания многофункциональных приложений. В OSGi выполняется ряд других функций — создание и обработка событий, управление импортом/экспортом java-пакетов и библиотек и др.
Плагины с их межплагинными интерфейсами, называемые также bundles (бандлы), регистрируются в ядре системы. Управление исполнением приложений — событийное на основе реестра сервисов. Ядро (framework) управляет жизненным циклом плагинов и называется системным. Плагины могут находится в состояниях "инсталлирован", "готов к работе (доступны все связи)", "выполнение", "получен результат", "остановка".
Понятие "динамическая шина" означает, что можно, не перезапуская приложение, устанавливать, подключать, отключать и обновлять модули системы.
Примером реализации OSGi является Equinox в системе Eclipse.
Список литературы
1. http://www.osgi.org/Main/HomePage