Как правильно отобразить маркер проблемы?Не отображается текстовый редактор и вид проблемы - PullRequest
3 голосов
/ 08 июля 2010

Я получил много идей из предыдущего вопроса ( Как отобразить знак ошибки на пакете, если пакет содержит неверную информацию? )

Но маркер проблемы не отображается.

Интересующий меня ресурс - это файл XML.

Итак, я добавил слушателя для PRE_BUILD, используя следующий код:

addResourceChangedListener(xxx, IResourceChangeEvent.PRE_BUILD)

Работает нормально. Сейчас я пытаюсь добавить маркер проблемы.

IMarker marker = file.createMarker(PROBLEM_ID);
marker.setAttribute(IMarker.SEVERITY, IMarker.SEVERITY_ERROR);
marker.setAttribute(IMarker.MESSAGE, "Error Message");
marker.setAttribute(IMarker.CHAR_START, 5);
marker.setAttribute(IMarker.CHAR_END, 6);
marker.setAttribute(IMarker.LINE_NUMBER, 5);

вышеуказанный код выполняется. Но Маркер проблемы не отображается в представлениях «Редактор» и «Проблема». Как правильно отобразить маркер проблемы?

1 Ответ

2 голосов
/ 08 июля 2010

Если вы добавите свой маркер на IResourceChangeEvent.PRE_BUILD, я могу представить, что проблема в том, что перед сборкой все маркеры очищаются - поэтому, возможно, ваши новые маркеры будут удалены сразу, чтобы вы их даже не увидели.Я бы попробовал с IResourceChangeEvent.POST_BUILD.

Кроме того, вы используете правильный идентификатор проблемы при создании маркера?Потому что в вашем коде вы используете createMarker(PROBLEM_ID), а не createMarker(IMarker.PROBLEM).

...