Eclipse resolve “resource is out of sync with the filesystem” permanently

If you are a regular Eclipse user than you might have got this error many times. The error simply says, “you’ve made changes in files in your workspace from outside eclipse”. The simplest solution would be to select the project and press F5 (Right click -> Refresh). This will re-sync any external changes to the file system and eclipse would now know what exactly is in your workspace. But it is cumbersome to do this everytime any of your file changes due to external agent.

The best way would be to let Eclipse automatically handle any external changes in file system. So that when you compile the code it never gives the error “resource is out of sync with the filesystem”.

Do do this, select following option:

Window -> Preferences -> General -> Workspace

Now depending on your version of Eclipse you will get either of following options in workspace window.

Refresh Automatically

Refresh using native hooks or pooling

Check out the below screen shot for this option.

One thing we should highlight here is that Eclipse uses polling mechanism to check whether there was any change in the filesystem. This might have a performance impact. So choose wisely. Frankly I am using this feature for quite sometime now and I don’t see that much of impact.

Do you have some practice while running an additional compiler like the CoffeeScript oder SASS/Compass Watchdog? We’ve noticed that especially on windows (7), the refreshing won’t work — with the both options enabled. Refreshing on “Refresh” or “on access” works.