Eclipse Debugger Events - PullRequest
       8

Eclipse Debugger Events

2 голосов
/ 08 июня 2011

В моем плагине Eclipse я хотел бы получать уведомления о событиях отладчика (например, при наступлении шага или достижении точки останова).Мне удалось заставить это работать в среде JDT, подписавшись на события отладки, используя этот код:

DebugPlugin.getDefault().addDebugEventListener(this);

, который дает этот обработчик события:

public void handleDebugEvents(DebugEvent[] events)
{
}

В JDT это срабатываетна событиях Breakpoint или Suspend, и я надеялся, что поведение будет таким же в CDT.Однако это не так.Я получаю только два события Create в начале сеанса отладки:

DebugEvent [org.eclipse.cdt.dsf.gdb.launching.GDBProcess@ae0aae, CREATE, UNSPECIFIED] DebugEvent [org.eclipse.debug.core.model.RuntimeProcess @ 920d5d, CREATE, UNSPECIFIED]

Существует ли универсальное решение, которое не требует особых зависимостей от JDT или CDT?

Спасибо, Алан

Ответы [ 2 ]

1 голос
/ 10 июня 2011

Я нашел решение и ответил на другой мой вопрос здесь: Плагин Eclipse - обработка событий при шаге или разрыве

Alan

0 голосов
/ 04 ноября 2013

Я думаю, что то, чего вы хотите, не может быть достигнуто (универсальное, независимое от реализации решение) без прослушивания и изучения каждого отдельного действия в среде Eclipse, так как я понимаю, что универсальный плагин отладки Eclipse - это просто основа длядля построения отладчика, специфичного для реализации, например, собственного отладчика Java.

Статический вызов, который вы делаете для DebugPlugin, - это вызов этой базовой «инфраструктуры», на которой работает CDT или JDT.Например, если бы я хотел зарегистрировать прослушиватель точки останова в отладчике Java, я бы вызвал JDIDebugModel.addJavaBreakpointListener(<Your Java breakpoint listener class>);.

PS Если есть возможность прослушать только события, запущенные из / под общей отладки платформыПлагин, который будет включать в себя события, запускаемые из плагинов, которые исходят из этого универсального отладчика, которые могут облегчить задачу, которую вы стремитесь выполнить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...