I’ve been running into an issue with an Eclipse plugin update: I updated a plugin, and then broke a critical functionality. What I usually do is to uinstall the plugin (see “Uninstalling Eclipse Plugins“), and then install it again. However, in this case the uninstall ended with an error too :-(.
What now? How can I revert that plugin installation/update?
What I just have learned is that it is possible to revert installations like an undo 🙂
💡 Important point: In my view, it is not the fault of the GNU ARM Eclipse plugin used in this example. The problem is that there is a patch in my Eclipse version depending on an other thing which breaks things when I get that new GNU ARM Eclipse plugin. But I just have run into this issue, and want to document to how such a problem can be solved.
Go to the Help menu and select the ‘Installation Details’:
💡 I’m using Eclipse Luna, in this particular case the Freescale Kinetis Design Studio
Go to the ‘Installation History’ tab and use ‘Revert’ to go back to a previous time/installation point. So I can select a point/plugin configuration back in and revert to that point:
There is only one catch: the plugins of that previous configuration must be accessible, otherwise I get an error about ‘Revert configuration has encountered a problem’:
In my case it complains with a plugin not found, because it came pre-installed with that Eclipse distribution. Luckily, most plugins have previous versions available on the net, e.g. I found the one for my case on SourceForge (https://sourceforge.net/projects/gnuarmeclipse/files/Current%20Releases/2.x/):
So that Eclipse can find it, I have added the archive to the available Software Update Sites (menu Window > Preferences > Install/Update > Available Update Sites):
Because updates depend on other updates, it might be even necessary to have a row of updates available for a successful revert:
It is possible to revert installation of Eclipse plugins to an earlier state. This requires that the previous plugins are still available somewhere. I recommend to have them downloaded and stored locally. If your plugin provider does not host earlier versions on a server, then you can download the plugins from an Eclipse update site (see “Replicating an Eclipse Update Site for Offline Usage“). But you need to do this as long as this update site is available, or when you are making the update. If that update site (or the file server) goes away, you cannot do a revert any more.
💡 another thing I do often before doing an update in Eclipse: I make a copy of the layout/installation folder. If something goes wrong, I have a backup 🙂
Happy Reverting 🙂
PS: Thank you Liviu for the great plugins you provide with http://gnuarmeclipse.livius.net/blog/, and that you put all versions of your plugins on SourceForge (https://sourceforge.net/projects/gnuarmeclipse). That saved my day!