在Eclipse中,谁在Bundle-Activator类上调用Start()?

hgc7kmma  于 2022-09-21  发布在  Eclipse
关注(0)|答案(1)|浏览(118)

我的最终目标是Invoking Eclipse plugin from Java。我看到一个Eclipse插件在MANIFEST.MF中将一个类注册为Bundle-Activator。将对此类调用start(BundleContext context)方法。这通电话是从哪里打来的?

ECLIPSE由许多主要反映在GitHub上的repos组成。其中一些是不受欢迎的,并指出了其他的建议。它同时是一个编程IDE和一个OSGi框架吗?我发现很难找到框架中处理插件加载的这个核心部分的代码。它在哪里?

zour9fqk

zour9fqk1#

与OSGi捆绑包交互的项目是Eclipse Equinox。它是OSGi框架的实现。启动Equinox并从那里加载包JAR,而不是将它们放到常规类路径中。

在这里,您可以找到一些一般的操作信息:http://njbartlett.github.io/2011/07/03/embedding-osgi.html

然后,您可以从您的纯Java应用程序与捆绑包进行交互。然而,这并不是一件容易的事情。

让事情变得更复杂的是,Eclipse不是普通的OSGi。ECLIPSE早于OSGi,许多概念仍然不能完全适应普通的OSGi。因此,在普通的Java应用程序中使用eclipse插件可能非常困难。

我建议在你想要使用的插件的邮件列表上询问你是否有在eclipse之外使用它的经验。

相关问题