Подтвердить что ты не робот

Выражение Watch не показывает значение в eclipse с java

Я использую eclipse helio с java.

Параметр просмотра часов не работает для меня при отладке моего кода

Если я делаю часы на переменной, я не могу увидеть значение этой переменной в представлении часов если я hoover с моей мыши над переменной в коде, я могу увидеть ее значение если я проверю переменную в представлении переменных, я могу увидеть ее значение

но в окне выражений часов я не вижу его значения (и его проблема, если я пытаюсь смотреть выражения, например)

Кто-нибудь столкнулся с этой проблемой

(он работал нормально и показывал значения, но потом внезапно остановился, и я понятия не имею, почему)

спасибо

4b9b3361

Ответ 1

Для меня проблема связана с плохой конфигурацией пути источника для проекта. Там есть множество различных способов исправить это, но нужно щелкнуть правой кнопкой мыши по потоку во время паузы в отладчике, выбрать "Изменить поиск источника..." и поиграть с указанными там путями (см. Ниже).

enter image description here

В моем случае проблема заключалась в том, что я указал путь поиска источника как "каталог файловой системы". Я смог снова получить представление Expressions, удалив путь "Каталог файловой системы" и добавив исходный поиск как "Java Project".

Вы можете проверить, является ли проблема вашим исходным поисковым путем, открыв представление Debug → Display и пытаясь оценить там выражение Java. Если вы видите такое сообщение, то ваш исходный путь поиска плохой:

To perform an evaluation, an expression must be compiled in the context of a Java project build path. The current execution context is not associated with a Java project in the workspace.

Ответ 2

Обычно (по крайней мере для простых случаев) работает выражение. Но иногда он действительно прекращает показывать значения.

Обычно обновлять и очищать проект + (иногда) перезапуск справки eclipse.

Если вы можете видеть простые значения и не можете видеть выражение, это иногда потому, что класс, возвращаемый выражением, не отображается в списке импорта текущего класса. В этом случае я часто пытаюсь записать явное приведение в класс в выражение часов, и иногда это помогает.

Удачи.

Ответ 3

В моем случае, при отладке от wildfly, мое рабочее пространство каким-то образом испортилось после того, как я открыл в качестве проекта maven источники eclipselink 2.6.4.

После открытия этого проекта maven, который имеет все виды зависимостей, которые вы можете изобразить на библиотеках оракула, в моей рабочей области выражения и вид отображения просто больше не работали. Просмотр переменных, в то время как отладка продолжает работать так же, как и все мыши.

Затем я создал новую новую пустую рабочую область. Импортирован только проект, который я хотел отлаживать. Переконфигурированный сервер wildfly. И вуаля, выражение и дисплей вернулись к работе.

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

Поэтому, если у вас возникло ощущение, что из-за сильной утраты способности правильно отлаживаться в рабочей области, возможно, ваш workapce забил.

Это, похоже, то, что случилось со мной. Наконец, я вернусь к тому, чтобы использовать выражения в этой новой рабочей области.