views:

309

answers:

5

Having dealt with yet another stupid eclipse problem, I want to try to get the lightest, most minimal eclipse installation as possible.

To be clear, I use eclipse for two things: - Editing Java - Debugging Java

Everything else I do through emacs/zsh (editing jsp/xml/js, file management, svn check-in, etc). I have not found any aspect of working in eclipse to do these tasks to be efficient or even reliable, so I do not want plug-ins that relate to it.

From the eclipse.org site, this is the lightest install of eclipse that they have, and I don't want any of those things (bugzilla, mylyn, cvs, xml_ui), and have actually had problems with each of them even though I do not use them.

So what is the minimal build I can get that will: 1) Ignore svn metadata 2) Includes the full-featured editor (intellisense and type-finding) 3) Includes the full-featured debugger (standard eclipse/jdk)

Does not have any extra plug-ins, platforms, or "integrations" with other platforms, specifically, I don't want to deal with plug-ins relating to:

Maven, JSP Validation, Javascript editing or validation, CVS or SVN, Mylyn, Spring or Hibernate "natures", app servers like a bundled tomcat/glassfish/etc, J2EE tools, or anything of the like.

I do primarily spring/hibernate/web-mvc apps, and have never dealt with an eclipse plug-in that handles any of it gracefully, I can work effectively with my own toolset, but eclipse extensions do nothing but get in the way.

I have worked with plain eclipse up to Ganymede, MyEclipse (up to 7.5), and the latest version of Spring-SourceTools, and find that they are all saddled with buggy useless plug-ins (though the combination is always different).

Switching to netbeans/intellij is not an option, and my teammates work with svn-controlled .class/.project files, so it pretty much has to be eclipse.

Does anyone have any good advice on how I can save a few grey hairs?

+1  A: 

Get as minimal an installation as you can, and then remove whatever's left that you don't want.

Longer answer:

Ok so I played around a bit. Here's how I experiment:

  1. Extract a clean eclipse*.zip to two different directories; call it eclipse and eclipse-bak. We'll only modify eclipse.
  2. Before starting it the first time, remove some of the features from the features folder. I got rid of org.eclipse.cvs, org.eclipse.epp.*, ...mylyn*, ...wst*.
  3. Start up eclipse to a workspace. Create in that workspace a Java project, debugging configuration, etc. Stuff that you would want to do and that will complain if we remove the wrong thing. Open up the Error Log view.
  4. Close eclipse. Remove something (or a group of things) from the plugins folder.
  5. Open eclipse. Check the error log to see if something you care about couldn't load. If it did, add those things back from eclipse-bak/plugins. If not, close eclipse and return to step 4 for a new set of plugins.

Using this I got my configuration to still be able to edit and debug Java files, but including only these plugins:

com.ibm.icu*
org.apache.*
org.eclipse.compare*
org.eclipse.core*
org.eclipse.debug*
org.eclipse.draw2d*
org.eclipse.ecf*
org.eclipse.epp.package.java*
org.eclipse.equinox*
org.eclipse.help*
org.eclipse.jdt*
org.eclipse.jface*
org.eclipse.ltk*
org.eclipse.osgi*
org.eclipse.platform*
org.eclipse.rcp*
org.eclipse.search*
org.eclipse.team.core
org.eclipse.team.ui
org.eclipse.text
org.eclipse.ui*
org.eclipse.update*
org.hamcrest*
org.sat4j*

Most of that is core stuff, but you might be able to trim it down further. Notably gone are Mylyn, the usage collector, EMF, CVS, WST, even JUnit (though I think you should keep JUnit).

Mark Peters
That would be nice, but disabling and changing these features often doesn't work. For example (this)[http://stackoverflow.com/questions/261045/eclipse-3-4-ganymede-javascript-validation-issue] is an issue I am currently having, but even turning off all related features and removing what I can from the path, it still is suddenly throwing me a bunch of javascript errors after the last update, even though nothing has changed. This means a default feature that I don't want and have turned off is still preventing me from working. I want to know how to start off without any of that crap.
liam
You're right, I'm doing some experimentation now. I had assumed you could uninstall some of those things from within the app; looks like that assumption was wrong. Sorry for being premature!
Mark Peters
No problem, I've had so many little things like this happen to me that I think its just time to try to get the platform right, at least for me. I want to use eclipse for the things it does well, and not be bothered with their attempt to try to do everything in a java IDE. (for example: plain vanilla myeclipse's default behavior when you click the "debug" button is to try to debug a .java file as a javascript file. Nothing about that makes sense. Also, editing an xml file switches your keybindings back to standard, even if you set them to be globally emacs.) But I've tried the easy and obvious.
liam
after the edit:Wow, thanks for the effort!I forgot about junit, that is a good plug-in, and I definitely use it. I'm checking out the other options, but if I don't get anywhere with it I will definitely give this a shot. Thanks!
liam
A: 

If you only want to use Eclipse for editing / Debugging Java I would suggest using a plain Text editor. It seems an overkill to install Eclipse and not use most of its features.

A very popular choice is VIM. Also check out this SO link for tips in using VIM as a Java editor. You can also debug Java code with a command line debugger as mentioned in this SO link.

Ross
Thanks, but I use emacs for everything but java. I explained this in the original question. I need to use the .classpath/.project setup with teammates, and while emacs can do some amount of tagging there is not an easy, out-of-the-box set-up for it, and I've found the code introspection to be lacking compared to eclipse.The right tool for the right job. In this case, eclipse does exactly what I want with editing/debugging, it just saddles on a bunch of broken plug-ins that I don't want. So where do I get the version without the junk?
liam
+2  A: 

The "Eclipse IDE for Java Developers" version isn't the smallest one! Look for "Eclipse Classic" - it doesn't contain most of the things you mentioned. It's larger in download size only, because it comes with source code.

See this comparison: http://www.eclipse.org/downloads/packages/compare-packages

Chris Lercher
One big thing that Classic includes is PDE, which is the plug-in dev environment. Most Java developers don't develop Eclipse plugins.
Mark Peters
Yeah, I saw that on the downloads page, but didn't want to bite the bullet, but somehow missed this package comparison.PDE has never really gotten in my way, but I would still rather not have it. (and why is it _mandatory_ to get all the source in a bundle? why not a separate link of just the dist?)Thanks guys!
liam
You could try building your own: http://ondemand.yoxos.com/geteclipse/start (hint: use the Templates tab). I used this once a few years ago, and it worked fine - they did introduce some modification to the Eclipse update process though, which I didn't like. Maybe this is better now.
Chris Lercher
This one worked out of the box. I went with this solution and will try yoxos next time. Thanks for the help everyone!
liam
+3  A: 

You can use a thirdparty distribution builder like Yoxos and download just what you want.

ykaganovich
That looks good, I'm using the plain vanilla one suggested by chris_l , but next time eclipse decides to have a complete meltdown and nuke my workspace ill give this a shot!
liam
+1  A: 

Go to the Platform Project's download area. (3.5.2 is Galileo, 3.6RC4 is the current Helios candidate). You want the "Platform Runtime Binary" (49.5 MB) and the "JDT Runtime Binary" (24MB).

Extract and run the platform, go to Help -> Install New Software. Click "Add..." -> "Archive" -> choose the JDT zip you downloaded. Uncheck "Group Items by category", then select the "Eclipse Java Development Tools". Click next to install and restart eclipse when prompted.

Andrew Niefer
I just built myself a lean, mean Eclipse for XML editing only by downloading the Platform Runtime Binary and installing the XML tools using the in-app installation wizard. No more JDT, PDE, Myline, etc! I wanted this for a long time, so thanks!
sapporo