問題マーカーとリソースの関連付けに問題があるようです。私の場合、エディターの問題マーカーを作成しようとしています。
これを達成するために、私は次のことを試みました:
public class MyEditor extends TextEditor{
private ColorManager colorManager;
public MyEditor() {
super();
...
IResource resource = (IResource) getEditorInput().getAdapter(IResource.class);
try
{
marker = resource.createMarker(IMarker.PROBLEM);
}
catch (CoreException e)
{
e.printStackTrace();
}
}
ただし、問題はgetEditorInput()がnullを返し続けることです。私はそれを正しい場所で呼んでいないと思います。エディターを設定したらマーカーを作成するのが理想的だと思いましたが、そうでないことも証明されています。
問題マーカーを作成するために、必要な適切なリソースを取得するためのアドバイスはありますか?エディター内にエラーなどを表示したいのですが。
マーカーを作成するためのサンプルをオンラインで確認しましたが、ほとんどの場合、メソッド呼び出しがどこにあるかを表示せずに、ITextEditorオブジェクトを渡すメソッドを表示するだけです。(例:コンパイラのエラーマーカーの作成-reportErrorメソッドを参照)
ありがとうございました。ポール
編集:問題マーカーに関する次のリンクも表示しましたが、ここでも、リソース(この場合はres)からcreateMarkerを呼び出しますが、そのセットアップは表示されません。Eclipseエディタプラグインでの構文エラーの表示を参照してください。