问题
I'm using the IResourceChangeListener to listen for workspace/project changes. It's implemented as proposed by the Eclipse example:
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);
I implemented this code in a relatively new plugin project, but whenever changes are made in the workspace "Something changed!" is thrown twice?
If helpful: The class implements org.eclipse.ui.IStartup
. IResourceChangeListener
and resourceChanged()
are created and inside of earlyStartup()
.
来源:https://stackoverflow.com/questions/23875766/iresourcechangelistener-being-called-twice-with-one-change