创建一个Eclipse调试视图。

3
我正在开发一个Eclipse插件中的自定义调试视图。在此视图中,我需要知道何时处于调试模式以及当前是否触发了断点。
目前,当我的视图处于活动状态时,我通过监听DebugPlugin和IBreakpointManager中的各种调试事件来实现这一点。如果我的视图已经打开并且插件已被激活,则此方法有效,但是如果在调试会话期间打开我的视图,则无法知道是否已经开始了调试会话。
有没有办法明确检查调试会话是否正在进行中?一种可能性是强制使我的插件在Eclipse加载时自动启动,但我宁愿避免这样做。
有什么想法吗?
谢谢, Alan
1个回答

4
当您的插件激活时,您可以获取启动管理器的控制权:
ILaunchManager = DebugPlugin.getDefault().getLaunchManager();

ILaunchManager可以为您提供一个ILaunch数组:

ILaunch[] launches = launchManager.getLaunches();

每个 ILaunch 都有一些调试目标:

IDebugTarget[] debugTargets = launch.getDebugTargets();

每个IDebugTarget都可以告诉您它当前是否已暂停:

debugTarget.isSuspended();

我建议阅读这些API并进行一些调试,以确定调试会话是否处于活动状态,并且当前是否命中断点。我现在没有时间为您检查。
注意:如果未使用调试插件,则其默认值将为null。

谢谢@katsharp。这非常有帮助。我发现有一个调试目标就足够满足我的需求了。非常感谢。 - Alan Spark

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接