Интерфейс отладки Java: разместите точки останова в произвольных местах в коде

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

ReferenceType classRef = vm.classesByName(className).get(0);
Method meth = classRef.methodsByName(methodName).get(0);
BreakpointRequest brF1 = vm.eventRequestManager().createBreakpointRequest(meth.location());
brF1.enable();

Однако я не могу понять, как получить объекты Location для произвольных местоположений в исходных файлах.

1 ответ

Решение

Есть несколько способов получить Location для других мест в исходном файле.

Например, Method имеет несколько операций для этого:

  • allLineLocations() + 1 перегрузка
  • locationsOfLine(int line) + несколько перегрузок

Также у ReferenceType есть операции для этого. Просто найдите для использования Location,

Другие вопросы по тегам