Известный OSGi-евангелист Neil Bartlett начал интересную серию статей о разработке библиотек, способных корректно работать в среде OSGi.
В принципе, многие библиотеки могут работать в OSGi среде, даже если они не предоставляют OSGi-дескриптора (т.е. файла MANIFEST.MF, содержащего поля Bundle-SymbolicName и т.д.), если только они не используют паттерны, создающие проблемы, такие как сканирование ClassPath и вызовы Class.forName(). Данные библиотеки Neil обозначает термином compliant. Другие фреймворки могут более глубоко интегрироваться с OSGi, например использовать сервисы, настраиваться через Config Admin и т.д.
Чтобы сделать диалог между авторами библиотек и OSGi-сообществом более продуктивным Neil предлагает договориться о терминах и ввести следующую шкалу уровней взаимодействия между библиотекой и OSGi.