Eclipse, JDT: удаление маркера не отображается в графическом интерфейсе после ASTRewrite - PullRequest
0 голосов
/ 31 декабря 2010

Хорошо, поэтому у меня есть быстрое исправление / рефакторинг, который удаляет или изменяет тип нарушающего поля из класса Java, если поле не присутствует во внешнем DSL.

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

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

Я полагаю, что здесь что-то упущено, например, когда я сообщаю некоторому компоненту, что я закончил с рефакторингом или удалением маркеров.

Есть какие-нибудь подсказки?

1 Ответ

1 голос
/ 25 марта 2011

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

...