Posted by: iainduncani | May 8, 2010

Space Saving Tips for Eclipse Plug-in Developers

At work I mainly write plug-in for Rational Software Architect which is an extension to Eclipse. I was having a tidy up of my hard drive the other day and found that my workspace directories were taking up a ridiculously large amount of space.

It turned out that it was all down to the way the Eclipse tools for testing plug-ins work. When you test plug-ins you can create a “Eclipse Application” launch configuration that is a new instance of Eclipse (or RSA in my case) that has all of the core product plug-ins and also installs any new plug-ins that you are developing.

When you launch an application in this way it packages up the plug-ins in your workspace into the .metadata\.plugins\org.eclipse.pde.core\<CONFIGURATION_NAME> folder inside the workspace directory (where <CONFIGURATION_NAME> is the name you have given to the runtime workbench configuration). This is all fair enough as it needs to have access to the plug-in code that I want to test and didn’t actually take that much space.

What was actually taking up the space on my hard drive was the org.eclipse.update\history folder within each configuration folder. It turns out that every time you launch one of these applications Eclipse keeps a history of all of the plug-ins in the launch configuration. For me this meant a 300KB file every time I tested some of my code, for my most frequently used workspace this caused over 1GB of history files to be created.

Deleting the launch configuration solved the problem for me, as did going into the history folder and deleting all of the XML files. I’m not sure what Eclipse uses them for as deleting all of them did not appear to have any affect on launching the application.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s


%d bloggers like this: