是否有从Eclipse调试器接收事件通知的通用方法。具体来说,我只想知道用户何时跨过/进入,以及何时到达断点。
我已经在JDT中实现了这一点(请参阅我的另一个问题:Eclipse调试器事件),但同样的技术在CDT中不起作用(我使用的是DebugPlugin.addDebugEventListener)
如果没有通用的方法来做到这一点,那么有没有一种方法可以避免CDT依赖关系在JDT中运行时破坏插件?
谢谢,Alan
好吧,我找到了一个对其他人有用的替代方案。您可以使用上面列出的方法在创建和终止会话时侦听调试事件。
对于任何步进事件,我发现的一种方法是注册一个IExecutionListener,以便通知Eclipse工作区中发生的所有命令。您可以通过获取ICommandService来注册执行侦听器,如下所示:
ICommandService commandService = (ICommandService)PlatformUI.getWorkbench().getService(ICommandService.class)
然后添加一个执行侦听器:
commandService.addExecutionListener(this);
这将为您提供各种事件处理程序(notHandled、postExecuteFailure、postExecute Success、preExecute),您可以根据commandId值进行筛选。
我希望这能帮助其他人。
Alan