3

前の質問から多くのアイデアを得ました(パッケージに間違った情報がある場合にパッケージにエラーサインを表示するにはどうすればよいですか?

ただし、問題マーカーは表示されません。

私が興味を持っているリソースは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);

上記のコードが実行されます。ただし、問題マーカーはエディタービューと問題ビューには表示されません。問題マーカーを正しく表示するにはどうすればよいですか?

4

1 に答える 1

2

マーカーを追加するIResourceChangeEvent.PRE_BUILDと、ビルドの前にすべてのマーカーがクリアされるという問題が想像できます。つまり、新しいマーカーがすぐにクリアされて、表示されない場合もあります。で試してみIResourceChangeEvent.POST_BUILDます。

また、マーカーを作成するときに正しい問題IDを使用していますか?あなたのコードではcreateMarker(PROBLEM_ID)、ではなく、を使用しているからcreateMarker(IMarker.PROBLEM)です。

于 2010-07-08T15:03:12.637 に答える