我正在使用 netbeans,项目:“maven OSGI 包”,我的包激活器在 felix 中运行良好(等等)。 但我无法将外部 JAR(即本地)添加到 bundle 本身。实际上,假设我有一个 utils.jar 文件,我想在 bundle 中使用它(而不导出它),我无法理解为什么以及如何如此困难(不常见?)。
附注我已经看到 PAX 和 Eclipse(我只尝试了一个但没有成功)可以从 jar 库创建一个包,但对我来说这仍然听起来很奇怪,这个任务不是一种常见的做法。
<小时/>背景:
我做了一些作业,我猜我正在以错误的方式解决这个问题,所以我发帖寻求帮助(以正确的方式提示)。 我正在开发一个java库(作为一组接口(interface)和实现)充当各种项目的中间件。通用问题和范围与 OSGI 架构非常兼容。
现在的问题基本上是:在 bundle (=服务和实现)之间共享一组类/接口(interface)(=jar库)。 我喜欢并认为最好的方法是使用 BASE bundle 将此类库和其他 bundle 导出为扩展或依赖服务作为用户/提供者/执行器。
最佳答案
已解决。经过大量的作业和一些测试后,我通过找到库的 mavenized 版本并使用“Embed-Dependency”关键字(手动编辑 pom)使其工作。仍然不知道如何使用 netbeans ide 做到这一点。
关于java - 在 maven osgi 包中使用外部库 (jar) [netbeans],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5521038/