首先,我是一名OSGI新手: - )
我正在尝试在JBoss EAP 6.1中构建一个OSGI应用程序。但我目前在OSGI第三方库中存在问题。
我需要以下软件包“javax.enterprise.context”。所以我在部署文件夹中添加了“weld-osgi-bundle-1.2.0.Beta1.jar”。当我启动我的应用程序时,我得到了包“javax.interceptor”不可用的错误。所以我添加了以下配置我的配置xml:
<capability name="javax.inject.api"/>
<capability name="javax.interceptor.api"/>
然后我需要包“org.jboss.weld.environment.osgi.api.annotation”,所以我将“weld-osgi-core-extension-1.2.0.Beta1.jar”添加到我的deployments文件夹中。但后来我得到了包“ch.qos.logback.classic”不可用的错误......
所以我的问题是,在jboss osgi中依赖第三方lirbaries的最佳方法是什么? 在一个“正常”的ear文件中,所有内容都打包在那个耳朵里,有没有办法用osgi bundle做到这一点?
谢谢!
答案 0 :(得分:0)
可以在OSGi包中嵌入您的依赖项。看看Bundle-ClassPath清单条目。您可能还想查看OBR的bundle依赖关系管理。
最后,请阅读类似的post on this topic