Точки наблюдения JDI для локальных переменных

Мне нужно установить точки наблюдения для локальных переменных, но проблема в том, что JDI позволяет устанавливать ModificationWatchpoint и AccessWatchpoint только для переменных класса / экземпляра. Единственный подход, о котором я мог думать, - это отслеживать стековые кадры после выполнения каждой строки и сохранять текущее значение переменных в HashTable. Итак, я объявляю модификацию переменной, когда значение изменяется после выполнения одной строки, и я объявляю доступ к переменным, когда значение какой-либо другой переменной изменено и содержит значение, которое также содержит другая переменная. Но в моем подходе к поиску доступа к переменным есть одна проблема: предположим,

x=10
z=x+30

В приведенном выше случае мой подход не найдет доступ к переменной x.

Итак, мой вопрос: есть ли какие-либо функции, поддерживаемые JDI для выполнения вышеуказанных задач?

эй, как ты решил свою проблему?

Nfff3 04.05.2020 18:45

С JDI не удалось найти никакого решения. Я использовал библиотеку JavaParser для решения вышеуказанной проблемы.

rainyday 04.05.2020 22:25
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
2
2
102
0

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