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()
.