What is the single best free Eclipse plugin for a Java developer

Viewed 28032

Some Eclipse plugins are mandated by your environment. The appropriate source code management plugin, for example - and I'm not interested in those.

Some provide useful enhancements, but in a specific niche. I'm not interested in those.

Some are great, but cost money. I'm not interested in those.

Some were really useful on older versions of Eclipse, but are now part of the core build of the latest Eclipse version (3.4 as I write this). I'm not interested in those.

I want advice on which plugins every Java SE developer should be installing, one per answer please.

31 Answers

Answering my own question with my current favourite, Jadclipse, which works with jad to disassemble class files from third party libraries.

http://jadclipse.sourceforge.net/

MouseFeed Eclipse Plugin

I am using this one, which is very helpful for programmers who don't use key shortcut because they don't know about them.

MouseFeed helps to form a habit of using keyboard shortcuts. When the user clicks on a button or on a menu item, the plugin shows a popup reminding about the key shortcut.

Checkstyle. Its very quick.

FindBugs is wonderful but quite slow

My answer to this is clearly eclim. It exports Eclipse functionality to Vim, enabling me to use several awesome features of Eclipse, like auto-completion, autobuild and error-markup in the source file (using locations in Vim), auto-formatting, automatic imports, JavaDoc search, Source code Search... blah, I could go on forever. The most important thing is: I don't have to use the suck that is the Eclipse Java Editor (to me, editor quality is always subjective, of course).

Check out the site if you're into Vim, but forced/tempted to use Eclipse for one reason or another.

The Eclipse TPTP can be incredibly useful for finding the slow spots in code and for anything else that would requiring debugging, profiling, or benchmarking. The only flaw is that it doesn't work on the mac :'(.

If you use Hibernate then Hibernate Tools is a must. I really like the ability to write my HQL or JPQL and view the generated SQL real time!

If you're not using Hibernate I'm guessing your using a database in some form or another. Therefore, I would recommend the Data Tools Platform. In fact, you would be crazy to develop Java apps without using all the plugins provided by the Eclipse Ganymede Release. It's a great development platform without the headache of getting all the must have plugins synced up and working together.

I found sourceHelper plugin very useful when developing and debugging code.

The description of the plugin on the website says, "The “Source Helper” plugin is an Eclipse plugin that takes a very useful feature that exists in Intellij IDEA and puts it into Eclipse. In short, the feature shows the code of an out-of-visible-range starting bracket by floating a window that shows the code you cannot see. This helps immensely when trying to identify what closing bracket belongs to what part of the code."

Seems like you can't really answer this question without having a focus for your development in Eclipse. I guess everyone needs a build and dependency system, so maybe Maven tools will win?

Eclipse Metrics Feature (update site). The blurb:

This Eclipse plugin calculates various metrics for your code during build cycles and warns you, via the Problems view, of ‘range violations’ for each metric. This allows you to stay continuously aware of the health of your code base. You may also export the metrics to HTML for public display or to CSV format for further analysis.

  • Recalculation of metrics during every build
  • Export of metrics to CSV or HTML
  • Visual ‘dashboard’ with HTML export
  • Supported metrics are:
    • McCabe’s Cyclomatic Complexity
    • Efferent Couplings
    • Lack of Cohesion in Methods
      • Lines Of Code in Method
      • Number Of Fields
      • Number Of Levels
      • Number Of Parameters
      • Number Of Statements
      • Weighted Methods Per Class

(actually, I love FindBugs more, but this project is second.)

I'm going to cheat and say the maven plugin. Then everything else can hang off that.

Plus, maven-eclipse-plugin takes care of the biggest single problem I have with eclipse: Setting your classpath.

I've just discovered Byecycle. This dependency viewer lets you see how pretty (or otherwise) your design is, and highlights any circular dependencies between classes, allowing you to take appropriate action.

There's some great stuff mentioned by others, but I'm going to put SQLExplorer out there, too. Maybe not as generally useful as Maven or FindBugs, but it's great for pulling any JDBC data source into the IDE so you can test it and explore the DB structure. It's also available as a standalone RCP app.

java.decompiler.free.fr/?q=jdeclipse Java Decomipler Plugin for eclipse. I thought, it is the most useful plugin.

Related