В моем проекте BND (OSGi), я получаю следующее сообщение об ошибке, когда я пытаюсь запустить пакет (называемый UI в данном случае), хотя у меня есть флягу зависимости (org.apache.commons.io) правильно установлен.Нерешенный импорт пакета в OSGi
org.osgi.framework.BundleException: Unresolved constraint in bundle ui [12]: Unable to resolve 12.2: missing requirement [12.2] osgi.wiring.package; (&(osgi.wiring.package=org.apache.commons.io)(version>=2.0.0)(!(version>=3.0.0)))
Я попытался с помощью других org.apache.commons.io релизов, но без успеха.
Пользовательский интерфейс Bnd.bnd файл
Bundle-Version: 0.0.0.${tstamp}
-buildpath: \
../cnf/plugins/org.apache.felix.dependencymanager.annotation-3.2.0.jar;version=file,\
org.apache.felix.dependencymanager,\
osgi.core,\
launcher;version=latest,\
org.apache.commons.io
Private-Package: \
ui.impl,\
resources.css,\
resources.images
Export-Package: ui
Import-Package: *
Как я могу это исправить?
Благодарим вас заблаговременно.
У вас есть пакет, экспортирующий установленный пакет, который будет разрешен при запуске вашего пакета? –
Спасибо за ответ @BJ Hargrave Я попытался добавить '-runrequires: osgi.identity; filter: = '(osgi.identity = org.apache.commons.io)'' в файл Bnd.bnd, но это doesn Решить проблему. Я все равно получаю ту же ошибку –
Это не отвечает на вопрос BJ. Является ли пакет org.apache.commons.io в разрешенном состоянии? –