我正在使用一个应用程序,该应用程序使用并管理大量OSGi服务以及每个服务的实现,包括属性、动态等等。使用Equinox控制台的命令行非常有用,可以使用services或list-c等命令。然而,很难看到服务的具体实现,也很难获得要消费的有界或可用服务的当前快照。例如,您可以看到bundle引用是否得到满足,但您看不到哪些是那些得到满足的引用的实现(当然还有其他机制)。
因此,当您在OSGi中进行开发时,我们的想法是找到一个具有组织信息的GUI(例如,使用图形)来提高性能。也许Eclipse插件中有一个GUI,但我找不到它
如果你对此一无所知,我想为我的论文创建自己的:)
Eclipse有其插件注册表视图:
窗口>显示视图>其他…>插件开发->插件注册表
该视图附带了插件开发环境(PDE),因此您需要使用Eclipse Classic或用于插件开发人员的Eclipse,或者通过标准Eclipse更新机制额外安装它。
该视图可以显示在当前Eclipse实例中运行的插件,并按插件、扩展点或服务对它们进行分组。我相信最后一个选择是你正在寻找的。
尽管有一些工作可以使该视图也显示远程内容,但该功能似乎还没有达到正常的Eclipse版本。
另一个可以帮助您进行OSGi开发的工具是mToolkit。这是一个开源项目,专门用于帮助OSGi环境中的开发。
它提供了与Plug-inRegistry类似的视图,但它只显示有关OSGi捆绑包和服务的信息。它不支持OSGi规范之外的任何东西,所以没有插件注册表检查。
Apache Felix控制台提供了一个web接口来管理OSGi服务(以及许多其他东西)-我还没有用Equinox测试过它,但它的依赖性很小,所以它应该可以在大多数OSGi环境中工作。看见http://felix.apache.org/site/apache-felix-web-console.html
我会检查Peter Krien的X射线http://softwaresimplexity.blogspot.com/2012/07/xray-again.html
您看过Knopflerfish和ApacheFelix UI吗?我想,他们也可以安装在春分的顶部。