My 5 favorite NetBeans IDE features (vs. Eclipse)

In my current project, Eclipse Kepler has been selected by the customer as the preferred IDE for all main tasks. Of course, I’m also using NetBeans 8.0 for some activities like, for example, legacy code test coding.

I have already used Eclipse some years ago and, at that time (2009), Eclipse Galileo were quite superior to NetBeans 6.x: faster, rich of code hints and warnings, full of useful plugins. So, I was not really happy when the project moved to NetBeans (because of its Swing support).

Now let me compare them again, Eclipse Kepler 4.3 vs NetBeans 8.0, on same project (a big ant based web project) and on the same PC (Win7 64bit 4G RAM).


My first big surprise. Five years ago, when I moved from Galileo to NetBeans I really missed Eclipse speed: coding, windowing, compilation, everything were significantly faster in Eclipse.

Now this speed advantage is gone. I don’t have benchmarks to demonstrate my feeling but now my coding is visibly faster with NetBeans 8.0 than with Eclipse Kepler. If you install Findbugs and PMD plugins, Eclipse becomes really slow.

Native testing support

Second surprise. Why, in 2014, an IDE for Java EE developers does not include full testing support ?

I cannot imagine any real EE developers which does not need any kind of test support from the IDE.

In NetBeans there is complete native jUnit and TestNG support (templates, test runs, jump to test option in the editor, both *Test and *IT files support) which I found very useful and efficient.

Eclipse native support is poor but of course it can be extended via plugin. I’m using MoreUnit plugin which is quite nice and add many missing features to Eclipse. See here for a small tutorial.

But even if you install a test support plugin like MoreUnit, still an important Eclipse limitation remains : the possibility to have a dir for test files separated from the main src dir, which is an essential feature to let us handling deployments. If you don’t believe me, have a look at this 2008 bug still open: and its related bugs.
Simply unbelievable.

Java Hints and FindBugs integration

While coding, it is important to have feedbacks from the IDE about the quality of the code and possible errors. NetBeans Java hints is a very reach set of the code checks which helps me to avoid stupid errors and keep high the quality of my work. In addition, NetBeans includes first class support for FindBugs which, again, helps me during coding sessions.

I’ve found NetBeans code quality checks support better than the one available in Eclipse Kepler + FindBugs plugin. More checks and better control on how, for example, disable a FindBugs warning on a line (because it is ok) using an annotation: just a click with NetBeans and by hand with Eclipse.

Coding support: templating, completion,interfaces…

I like NetBeans coding support: code templates (some letters + tab to get most used keywords and structures (see here for some examples), auto-completion, now also using sub words, I can easily jump from an interface to its implementation, the new indent guide lines.

Similar features are available in Eclipse using, for example, the Code Recommenders plugin but I’ve found it quite slow on my machine so I had to disinstall it.

User Interface

NetBeans user interfaces has improved a lot while keeping its strong point: it is easy to use. Windows and menus are easy to find and the full screen mode is very useful on small screens. I really like the color coding setup (Norway Today) which makes code reading a pleasure and the dark skins for working late in the evening.

On the contrary, Eclipse interfaces remains somehow confusing and, my personal opinio, perspectives and workspaces are simply a waste of time.

25 thoughts on “My 5 favorite NetBeans IDE features (vs. Eclipse)

  1. Netbeans is nice IDE but speed is an issue. After I red this article I opened my Netbeans8.0 to see if it is really fast, while I am hitting enter to type anything in new line it took half a second just to move to the next line in file that has 300 line of code only. And also start to type dummy thing like “private String … ” every single letter appeared after a while on the screen. I have IMAC with 20GB of RAM!! and also I have tuned the JVM for Netbeans to have huge amount of Giga bytes in RAM but still it is the slowest IDE I have ever encounter.

    • I believe you have an issue on your Mac. Nobody will use a code editor so slow and I know people using NetBeans on Mac without such problems.

      • Well, there must be an issue with some Macs; some coworkers who use Macs complain about the same (while others are pleased)

      • I agree, I’ve been using Netbeans 6.9 on my macmini (10.8.5, 16 gig ram) and its just as fast textmate. I have zero complaints about speed. I’m just considering Eclipse at this for using LibGDX which seems to prefer Eclipse over Netbeans. But at this stage, i really want to stick with Netbeans.

  2. Ant? Then I guess you are missing the best of Netbeans: Maven.
    Try to move your project to maven, and then thou shalt meet the actual Value of Netbeans.
    (and while you are there, split your project into several smaller modules; Maven will make it easy)

  3. I am a Mac User. I have the newest, fastest iMac running Mavericks. I tried NetBeans for one project earlier this year. Using NetBeans, keyboard stutter (i.e. display lag for keystrokes) is real and very annoying. Eclipse has no such keyboard/display lag. I also find the Eclipse UI layout and Mercurial integration to be superior. I agree NetBeans has gotten better, but it still hasn’t caught up.

    And no, there is nothing wrong with my Mac.

    FWIW, IMO Swing sucks. It always has. It always will. I will give NetBeans another try when it is re-written using FX.

  4. In my opinion intellij idea is faster and has better support for java ee then both eclipse and netbeans. Even the community edition is awesome for projects especially the maven integration.

    • one thing i forgot to mention was the native support for a dark theme which is allot softer on the eyes especially for long coding sessions. i cringe when i have to code in a ide with no support for any type of ui theaming.

      • I like dark themes, too. And NetBeans has two of them in the last release. I don’t know about Eclipse but I think there should be some plugins…

      • I used IntelliJ for a project and loved it. I had been working in Netbeans though and still went back to Netbeans.
        I installed the Android Studio which I understand is supposed to be based on IntelliJ and it runs like molasses. On my windows 10 machine and my OSX El Capitan. I don’t understand it. It’s garbage. Must be full of bugs. 4/2016

  5. There is a tool that Eclipse is better than Netbeans: UML platform (Netbeans don’t have anymore). And UML is one of more important development tools of actuality!

  6. How does it work with Java 8? Intellij IDEA 13.1 still fails on some combinations of generic type uses (especially recursive generic type parameters) and method references, while Eclipse 4.4 just stops providing autocomplete and ctrl-click on some files with no exception dump or anything.

  7. Biggest feature of Netbeans is the ability to compile your source code to native code. Thus not have to use the JVM at all.

    • Dear Meh,
      i am totally surprised. Pleas inform me as is possible compile JAVA source code to native in NetBeans???
      This is IMHO unpublishet and secret property for me?!?!

  8. Netbeans IDE is far more better than Eclipse. I give 9.99 to Netbeans and only 1 to Eclipse out of 10. I feel irritate when using eclipse and I always prefer to use Netbeans to my Junior team and myself for Java/PHP. Anyone can use Netbeans easily over Eclipse. Eclipse is headache.

    And this is my personal opinion.

    • Yubi,

      Well said. I feel the same way about Eclipse. I love Netbeans and everything about it.

  9. On a windows 64-bit machine running JDK 64-bit. It take about 560MB of RAM after opening Netbeans 8.1 and takes about 10 seconds to load on a relatively fast laptop (x9100 CPU overclocked) with an SSD.
    Going between .cpp files in the IDE there is a slight delay, and also slight delay with menu navigation, etc. Task manager so high CPU activity during those times, along with the sustained high RAM usage.
    Wow. Just a little bit inefficient or is it just me.

    • Hi. I also work on a 64bit environment, on a 12MB Windows 7 Lenovo and on an old 4MB Dell with Xubuntu. In both case NetBeans startup time is generally longer than Eclipse but I do not need to manually refresh the project in NetBeans if i change something outside the IDE. On Java projects I don’t see significant delay in ui actions

      • Hmm, like when I create a new project and I am navigating through the directory structure of my primary volume with Netbeans in the ‘Select Sources Folder’ dialog box step, I can see it scanning down the list of directories (or filling in the icon for a folder downwards) as I navigate to another subdirectory with directories in it. Such as when I go to the my documents folder (Windows 8) I see it scanning down as I scroll down. Other smalldelays with the UI. 500MB memory usage when the program is freshly launched with 64-bit JDK.
        With 32-bit Netbeans instead of 64-bit is more like 230MB.
        Eclipse 32-bit, about 500MB on launch! Why does it take so much geez. But it is more responsive than Netbeans and creating a project and navigating to where I want it to be created at, it uses the native Windows Explorer ‘open dialog box’ so no delay. Netbeans uses it’s own weird own, which has delays in scanning.

        Have you seen this issue?

        Both of these programs can compile to native x86 C++, not too just java virtual machine? Thanks

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 )

Twitter picture

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

Facebook photo

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

Google+ photo

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

Connecting to %s