我有两个捆绑说A和B。A 依赖于 B(在 A 的 MANIFEST 中指定为 Required-Bundle:B)。
现在我安装两个A, B包一个接一个(c
org.osgi.framework.BundleException: Could not resolve module: A [140]
Unresolved requirement: Require-Bundle: B; bundle-version="1.0.0"
我从异常中了解到捆绑包B尚未启动(已解决)。现在如何解决这个问题呢?
解决这个问题的唯一方法是排序包
顺便说一下,我用的是春分。
确保在启动任何捆绑包之前安装所有捆绑包。一、 e.您需要这样做:
而不是这个:
在第二个(错误的)场景中,您将得到一个分辨率错误,因为就OSGi而言,A依赖于B and B还不存在。
在第一个(正确的)场景中,当您启动A时,OSGi将发现它需要解析A和B以满足依赖关系。
[顺便说一句,在你的问题中,你似乎从解决开始感到困惑:你说“B还没有开始(解决)”。这些是完全不同的东西。B只需要在启动A之前安装,OSGi会在需要的时候自动解析它。
问题内容: 如何定义OSGi捆绑包的开始级别? 我正在使用Apache felix,并希望在框架执行过程中保持起始级别。我预计Manifest中的条目根本不需要非常频繁地更改bundle的开始级别。MF似乎是最明智的。我已经到org.osgi.framework.startlevel了,但是还没有看到实际的例子。 如果有一种巧妙的方法将起始级别并入POM,那么我也将maven与maven-bund
我正在开发超文本传输协议客户端应用程序作为一个OSGI捆绑项目,我已经使用apache maven创建项目文件夹结构使用下面的命令。 上面的命令创建了项目文件夹结构,因为我使用的是基于httpclient的应用程序。我在pom中添加了依赖项。xml如下所示。 我执行以下命令, 根项目上进行构建 它在本地maven存储库中创建了所需的jar文件。 问题从这里开始。我试图在ApacheServiceM
问题内容: 如何从jar库创建OSGi捆绑包? 问题答案: 如果您使用的是eclipse:有一个向导。 它允许您选择许多jar库,并创建一个包含这些jar的插件项目(即OSGi捆绑包)。 你可以在这里找到它:
我使用EclipseIndigo使用OSGiJava框架开发了一些包。有一个主捆绑包,它依赖于其他捆绑包,并且具有要运行的主程序。如果我尝试在Eclipse中运行所有捆绑包,一切都正常工作,但是如果我将每个捆绑包保存为一个JAR,并在命令行中启动OSGi框架,当我尝试启动主捆绑包时,会出现异常<code>NoClassDefFoundError。找不到的类是依赖项。包的其余部分处于活动状态,主包刚
我在Apache Felix上开发了一个OSGI捆绑包。捆绑包公开不同的API来实时管理YouTube事件。捆绑包服务将通过REST服务公开,并将由用户通过Web浏览器(chrome、safari、mozilla)使用。 我为该帐户生成凭据Google(client_secret和client_id)并将其保存在文件中,然后我的代码使用此凭据并正常工作。 我使用这个类(在youtube文档中找到)
我正在将我的spring-java项目转移到OSGi。 我有一些依赖项,这些依赖项在spring ebr repo或maven repo中不能作为包提供。处理它们的最佳方法是什么? null