У меня есть два расслоения A и B. A зависит от B (указано как Required-Bundle: B в MANIFEST A).Как установить и начать с пакетами osgi за один раз с одним из них в зависимости от другого
Теперь я установил пакеты A, B один за другим (вызывая BundleContext.installBundle). Затем, когда я пытаюсь запустить расслоение, я получаю следующие ошибки
org.osgi.framework.BundleException: Could not resolve module: A [140]
Unresolved requirement: Require-Bundle: B; bundle-version="1.0.0"
Я понимаю, из исключения того, что расслоение B еще не началась (разрешено). Теперь как решить эту проблему?
Единственный способ решить эту проблему - сортировать пакеты по ее зависимостям? Или Есть ли какие-либо опции, такие как указание папки в OSGi, чтобы все скопированные файлы пакета были активированы?
Кстати, я использую равноденствие.
Похоже, что Bundle B еще не установлен, когда вы запускаете Bundle A? Структура автоматически попытается решить B, когда она будет установлена, вам не нужно ее запускать. –