Java refactoring tools

11,562

Solution 1

RefactorIT... Is available as standalone product and Eclipse plugin. Only con is that for non-open source projects you are limited to 50 classes (but can get around that by splitting into multiple Eclipse projects, and using dependencies). RefactorIT also has code generation tools, like 'Encapsulate Field', where you select (multiple) fields in the package view (wherever) and it automatically creates getters and/or setters, also same thing for Constructors... Great tool!

Solution 2

I agree with nevster that IntelliJ is much more complete and subtle in its set of refactoring tools. I have been using it for quite a while, and, with automatic code generation (which is essentially the same thing), an extensive refactoring toolkint is the feature that makes it really stand out compared to Eclipse.

However, I would not advise so readily moving to IntelliJ, for a number of reasons that can get really irking over time:

  • it's not free (I would even say it is expensive)
  • it has a HUGE memory footprint (half a Gb? wtf?) and is slow to start
  • it does not interact well with X-based window managers (to the point of silent data corruption, in some extreme cases)

So you would have to balance the advantages of a better (admittedly, outstandingly so) refactoring toolkit against the weight (literally) of IntelliJ.

Share:
11,562
Dónal
Author by

Dónal

I earn a living by editing text files. I can be contacted at: [email protected] You can find out about all the different kinds of text files I've edited at: My StackOverflow Careers profile

Updated on June 22, 2022

Comments

  • Dónal
    Dónal almost 2 years

    Possible Duplicate:
    A tool like ReSharper, but for Java?

    I make very heavy use of the Java code refactoring tools provided by Eclipse (extract interface, rename method, etc.). Does anyone knows of other similar tools (preferably Eclipse plugins) that can perform Java code refactorings that are not available in Eclipse by default, or that can perform the same refactorings better?

    I'm aware of various Eclipse plugins that can identify code in need of refactoring (e.g. FindBugs, UCDetector), but I'm looking for tools that can actually do the refactoring.

  • Adeel Ansari
    Adeel Ansari about 15 years
    I used IntelliJ under Gnome, and KDE both with OpenSUSE. It was fine, you can invoke garbage collection from within the IDE. And it works almost all of the time. The startup time is approximately same for all three; Eclipse, IntelliJ and Netbeans.
  • Varkhan
    Varkhan about 15 years
    I had a weird, and so far unsolved, focus-grabbing bug: IntelliJ would grab back the focus after running background task... while I was typing in another app. I often didn't notice, and this resulted in random stuff being typed in the editor. BAD!
  • mjn
    mjn about 15 years
    It looks like it is open source and free, at sourceforge.net/projects/refactorit (standalone and Eclipse plugin). Or is there a different tool with the same name?