Другой вариант: просто посмотрите, являются ли JAR, которые вы в настоящее время включаете в свой толстый JAR, пакетами OSGi (многие IDE сообщают об этом уже в некоторых представлениях зависимостей проекта) и запишите заголовок Bundle-SymbolicName
.
Затем вы извлекаете ту же информацию из всех пакетов, установленных во время выполнения Felix, например, используя оболочку Gogo :
lb -s
... или если у вас есть каталог с пакетами длявремя выполнения и команда bnd
(и вы работаете в Unix):
find <bundles-directory> -type f -iname "*.[jw]ar" -exec bnd --failok print --manifest {} \; 2>/dev/null | grep -F 'Bundle-SymbolicName'
Теперь вы можете сравнить эти списки с символьными именами, найденными в вашем толстом JAR.Найдя совпадение, вы также должны убедиться, что версия в порядке.