【发布时间】:2017-11-21 07:06:31
【问题描述】:
我有一个 NetBeans OSGi maven 项目,它需要从另一个 OSGi jar 运行一个类方法,该 jar 在运行时从文件系统加载。
我尝试查看其中一些类似的问题:
java: is there a framework that allows dynamically loading and unloading of jars (but not osgi)?
How to dynamically load Java classes at Runtime in OSGI framework?
但他们似乎都没有回答我如何访问我正在加载的包中的方法。
他们似乎给了我一个关于如何加载捆绑包的好方向,但是关于 OSGi 的文档也是如此。我没有找到的是如何从我安装的包中的特定类运行特定方法。反射似乎不起作用,我读到这可能不是一个好主意,无论如何它给了我著名的 ClassNotFoundException。
还有整个清单导入和导出,如this和其他问题所示 OSGi: programmitically add imports to a bundle
我不能使用 bndtools,因为我使用的是 netbeans,我也不确定它是否能完成这项工作。我也不确定 OSGi 服务是否与它有关。
提前感谢任何人帮助我不要把头发拉出来:)
【问题讨论】:
-
我使用 NetBeans OSGI 已经有一段时间了,但现在手头没有 IDE。我记得您必须在 NetBeans 中将包添加为依赖项,然后您可以随意调用这些方法。但是你应该先导出需要的包。
标签: java maven netbeans jar osgi