OSGi中未解析的包导入

时间:2016-04-01 18:01:02

标签: java osgi bnd

在我的Bnd(OSGi)项目中,每当我尝试运行一个包(在这种情况下称为 UI 时,我都会收到以下错误,即使我有正确安装依赖jar (org.apache.commons.io)

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: *

我该如何解决这个问题?

提前谢谢大家。

1 个答案:

答案 0 :(得分:0)

我从 Eclipse Marketplace 下载了 Amdatu ,并从Amdatu存储库套件中调用了依赖项,特别是来自 Amdatu依赖项组。出于某种原因,这种依赖有效。

我,我敢打赌,那里有一个更好,更合适的解决方案,应该设置一个依赖工作,无论如何。我不认为我真的在这里解决了这个问题。只是避免它,我担心我可能很快就会再次碰到它。但是,这暂时有效。