2015-09-25 8 views
0

Я разрабатываю плагин Eclipse, который работает с Debugger Services Framework (DSF). Целью, которую я пытаюсь достичь, является сопоставление IBreakpointsExtension.IBreakpointHitDMEvent с точкой останова платформы org.eclipse.debug.core.model.IBreakpoint. Существует сервис и функция, которые могут выполнять именно то, что мне нужно: org.eclipse.cdt.dsf.debug.service.BreakpointsMediator2#getPlatformBreakpoint.Как получить/создать org.eclipse.cdt.dsf.debug.service.BreakpointsMediator2

Вопрос в том, как получить/создать org.eclipse.cdt.dsf.debug.service.BreakpointsMediator2?

Я пытался позвонить DsfServicesTracker#getService(BreakpointsMediator2.class), но он возвращает null. Существует еще один вариант (я думаю), чтобы создать экземпляр BreakpointsMediator2 прямо в том месте, где он будет использоваться. В этом случае нам нужен пример org.eclipse.cdt.dsf.debug.service.IBreakpointAttributeTranslator2. Но DsfServicesTracker#getService(IBreakpointAttributeTranslator2.class) также возвращается null.

ответ

1

Это невозможно, потому что проект eclipse-dsf-cdt просто не реализует интерфейсы org.eclipse.cdt.dsf.debug.service.BreakpointsMediator2 и org.eclipse.cdt.dsf.debug.service.IBreakpointAttributeTranslator2. Есть запрос, хотя для реализации. Проверьте https://bugs.eclipse.org/bugs/show_bug.cgi?id=478454. Другим возможным решением является использование MIBreakpointsManager. Имейте в виду, что в этом случае ваш код зависит от org.eclipse.cdt.dsf.mi.service.

Смежные вопросы