IResourceChangeListener wird zweimal mit einer Änderung aufgerufen

Ich verwende den IResourceChangeListener, um auf Änderungen an Arbeitsbereichen / Projekten zu achten. Es wurde wie im Eclipse-Beispiel vorgeschlagen implementiert:

IWorkspace workspace = ResourcesPlugin.getWorkspace();
IResourceChangeListener resourceChangeListener = new IResourceChangeListener() {
    public void resourceChanged(IResourceChangeEvent event) {
        System.out.println("Something changed!");
    }
};
workspace.addResourceChangeListener(resourceChangeListener, IResourceChangeEvent.POST_BUILD);

// some time later on ...
workspace.removeResourceChangeListener(resourceChangeListener);

Ich habe diesen Code in einem relativ neuen Plugin-Projekt implementiert, aber immer, wenn Änderungen im Arbeitsbereich vorgenommen werden "Etwas hat sich geändert!" wird zweimal geworfen?

Wenn hilfreich: Die Klasse implementiertorg.eclipse.ui.IStartup. IResourceChangeListener undresourceChanged() erstellt und innerhalb vonearlyStartup().

Antworten auf die Frage(0)

Ihre Antwort auf die Frage