Мне нужно установить точки наблюдения для локальных переменных, но проблема в том, что JDI позволяет устанавливать ModificationWatchpoint и AccessWatchpoint только для переменных класса / экземпляра. Единственный подход, о котором я мог думать, - это отслеживать стековые кадры после выполнения каждой строки и сохранять текущее значение переменных в HashTable. Итак, я объявляю модификацию переменной, когда значение изменяется после выполнения одной строки, и я объявляю доступ к переменным, когда значение какой-либо другой переменной изменено и содержит значение, которое также содержит другая переменная. Но в моем подходе к поиску доступа к переменным есть одна проблема: предположим,
x=10
z=x+30
В приведенном выше случае мой подход не найдет доступ к переменной x.
Итак, мой вопрос: есть ли какие-либо функции, поддерживаемые JDI для выполнения вышеуказанных задач?
С JDI не удалось найти никакого решения. Я использовал библиотеку JavaParser для решения вышеуказанной проблемы.




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