我想了解以下内容如何运作:
如果我有许多我想要传递的第三方包,我会在我的包中使用Embed-Dependency和*并指定为传递真。
这些依赖包中指定的bundle-activators会发生什么?这些依赖的束激活器将如何触发?我没有看到它被触发......
如果预计他们不会被触发,那么我们将如何从这些捆绑激活器获得功能?
答案 0 :(得分:2)
如果捆绑激活器在捆绑包的MANIFEST.MF的Bundle-Activator
标头中命名,则它将仅由OSGi调用。实现类必须可以由bundle加载,因此它可以出现在Bundle-ClassPath
中的任何JAR中。
如果您只是嵌入一个JAR并期望其激活器被调用,那么您会感到失望。
然而,这些JAR有活化剂的事实表明它们已经是OSGi包,所以为什么你想要嵌入它们呢?
答案 1 :(得分:0)
不是我想要嵌入它们......但如果我这样做 - 那么捆绑的激活器将不会被调用。那么可以公平地说,只有在没有激活器的罐子和捆绑的情况下才应该使用嵌入依赖吗?
我可以尝试嵌入捆绑包的一个原因是运行一个快速的poc系统,指定了所有的依赖项,而不依赖于提供它的环境。