有没有办法知道何时以及在什么样的插件Eclipse服务中注册?
Eclipse越来越多地使用面向服务的体系结构,这很好,但我是唯一一个认为缺少关于什么插件以及在什么阶段注册服务的知识是一个问题的开发人员吗 举个例子:有没有办法知道何时以及在什么样的插件Eclipse服务中注册?,eclipse,eclipse-plugin,eclipse-rcp,Eclipse,Eclipse Plugin,Eclipse Rcp,Eclipse越来越多地使用面向服务的体系结构,这很好,但我是唯一一个认为缺少关于什么插件以及在什么阶段注册服务的知识是一个问题的开发人员吗 举个例子: IServiceLocator someServiceLocator = ... SomeService someService = (SomeService)someServiceLocator.getService(SomeService.class); // oops, someService is null 某些服务为空的可能原因如下
IServiceLocator someServiceLocator = ...
SomeService someService = (SomeService)someServiceLocator.getService(SomeService.class);
// oops, someService is null
某些服务为空的可能原因如下:
注册此服务的某些插件不存在或未加载
服务尚未注册
如何解决呢??有工具吗
谢谢。简短的回答是:没有可用的工具 有关服务的完整列表及其注册位置,请在ServiceLocator.registerServiceClass api的对象服务上执行调用层次结构
有关可用全局服务的详细列表,请参阅Workbench.initializeDefaultServices。还有一些附加服务仅在窗口或工作台部件级别可用。简单回答:没有可用的工具 有关服务的完整列表及其注册位置,请在ServiceLocator.registerServiceClass api的对象服务上执行调用层次结构
有关可用全局服务的详细列表,请参阅Workbench.initializeDefaultServices。还有一些附加服务仅在窗口或工作台部件级别可用。如果您想知道安装和启动了哪些插件,可以使用OSGI控制台查看插件的状态 因此,如果您正在寻找服务XService,请找到包含该服务的插件,并在OSGI控制台上查找插件状态
使用-console选项启动应用程序,并在osgi控制台上键入ss。这不是直截了当的,但很有效。如果您想知道安装和启动了哪些插件,可以使用OSGI控制台查看插件的状态 因此,如果您正在寻找服务XService,请找到包含该服务的插件,并在OSGI控制台上查找插件状态
使用-console选项启动应用程序,并在osgi控制台上键入ss。这不是直截了当的,但很有效。查找注册服务的相关插件不是直截了当的。其次,可以在插件启动后注册服务。例如,在创建workbench时,查找注册服务的相关插件并不是一件简单的事情。其次,可以在插件启动后注册服务。例如,创建工作台时。