是否存在从Eclipse调试器接收事件通知的通用方法。具体来说,我只想知道用户何时跳过/进入以及何时遇到断点。
我已经在JDT中工作了(参见我的另一个问题:Eclipse Debugger Events)但是同样的技术在CDT中不起作用(我正在使用DebugPlugin.addDebugEventListener)。
如果没有通用的方法,那么有没有办法避免CDT依赖在JDT中运行时破坏插件?
谢谢, 艾伦
答案 0 :(得分:3)
好的,我找到了一个可能对其他人有用的替代品。您可以使用上述方法在创建和终止会话时侦听调试事件。
对于任何步进事件,我发现的一种方法是注册IExecutionListener以通知Eclipse工作区中发生的所有命令。您可以通过获取ICommandService来注册执行侦听器,如下所示:
ICommandService commandService = (ICommandService)PlatformUI.getWorkbench().getService(ICommandService.class)
然后添加一个执行监听器:
commandService.addExecutionListener(this);
这将为您提供各种事件处理程序(notHandled,postExecuteFailure,postExecuteSuccess,preExecute),您可以通过commandId值过滤它们。
我希望这有助于其他人。
艾伦