В качестве расширения вопроса " Изменение / просмотр статических переменных при отладке в Eclipse ", я хотел бы иметь возможность изменять статические переменные при отладке в Eclipse.
Для переменных экземпляра и локальных переменных я могу просто выбрать переменную в представлении «Переменные» Eclipse и использовать контекстное меню «Изменить значение ...» для изменения значения.
Это невозможно для произвольных статических переменных, поскольку они не отображаются в представлении «Переменные».
Что я пробовал:
- Если вы выберете «Java / Показать статические переменные» в меню треугольника в представлении «Переменные», вы сможете просматривать и изменять статические переменные-члены переменных, перечисленных в «Представлении переменных». Однако я не нашел, как получить доступ к статическому члену класса, экземпляр которого не отображается в «представлении переменных».
- Конечно, вы можете ввести статический член в качестве выражения в «Представление выражения» (используя полное имя). Затем вы можете увидеть значение, но «представление выражений» не имеет возможности изменить значение (оно позволяет разрешать изменять члены выражения, но не само выражение, даже если выражение поле).
Итак, если у меня есть статическая переменная, такая как логическое значение MyClass.disableAllBugs, есть ли способ изменить MyClass.disableAllBugs во время отладки?
В качестве отступления: я понимаю, что даже наличие общедоступных изменяемых статических полей (то есть изменяемых глобальных переменных) - очень плохой стиль. Но некоторые кодовые базы имеют его, и иногда бывает полезно изменить его во время отладки.