2011-07-17 10 views
0

ロードされたプロジェクトから取得したさまざまなリソースを読み込むプラグインを作成しようとしています。 ワークスペースのResourceChangeListenerに早期に登録しようとしています。そのため、ワークスペースに追加されたリソースの通知が得られます。 org.eclipse.uiのearlyStartupが遅すぎます(プロジェクトがすでにワークスペースにロードされている場合)。 ワークスペースリソースの変更を聞くことができる時間に、どのように拡張ポイントを使用してリスナーを登録できますか?あなたのプラグインが正常に起動する前に、ワークスペースが状況を処理するために参加者を保存した調査する必要がありプラグイン一Eclipse製品の自動起動

おかげで、 クリント

答えて

1

ワークスペースで開かれているリソース(すなわちプロジェクト)を知りたい場合は、あなただけのIWorkspaceを取得し、それに含まれるプロジェクトで見ることができます。

IWorkspace workspace = ResourcesPlugin.getWorkspace(); 
IWorkspaceRoot rootResource = workspace.getRoot(); 

次に、このツリー構造をトラバースしてすべてのリソースを調べることができます。お役に立てれば。ここで

は、いくつかのリソースです:

0

あなたは次のように "org.eclipse.ui.services" 拡張ポイントを使用しようとすることができます:

<extension point="org.eclipse.ui.services"> 
    <sourceProvider provider="com.plugin.YourClass"></sourceProvider> 
</extension> 

YourClassはクラスorg.eclipse.ui.AbstractSourcを拡張していますeProvider

あなたのプラグインは非常に早く起動します!