InfoWorld review: Top Java programming tools
Eclipse, IntelliJ IDEA, NetBeans, and Oracle JDeveloper continue Java's tradition of rich and diverse development tools
Examining the matrix of options highlights one of NetBeans' distinguishing features: support for languages that other IDEs ignore, namely JRuby and JavaFX. (NetBeans also has built in support for PHP and C/C++.) JRuby was originally developed at Sun, which explains its high profile in NetBeans. Charles Nutter, one of the JRuby lead developers, averred the superiority of NetBeans' language support in a recent conversation with me. JavaFX, the desktop scripting language, is bundled because Oracle strongly committed to the technology. (However, there is widespread skepticism that the language will ever gain traction, so its inclusion might be more for show than in response to user demand.) Unfortunately, NetBeans dropped support for UML diagrams, which it offered until recently.
NetBeans was completely redesigned several years ago, and it retains the simplicity and ease of navigation it acquired then. Things work as expected and the necessary options are rarely hard to find.
Unlike IntelliJ, which performs only syntactical analysis as you type, NetBeans constantly compiles in background. (Eclipse has a similar feature as a configurable option.) This means as soon as you finish editing, you can run the code. NetBeans also creates an Ant build file in the background for each project. A useful resource for developers, the Ant file guarantees that the build done by the IDE can be reproduced exactly by the developer.
NetBeans ships with a built-in profiler, a JUnit unit-test generator (that emits bare-bones tests, not enough to thoroughly test the code, but sufficient to get started), and a wizard for internationalizing strings. For enterprise work, a download option bundles Apache Tomcat or the GlassFish Open Server. To monitor running apps, NetBeans uniquely integrates support for JMX (Java Management Extensions) and JConsole.
Plug-ins for NetBeans are significantly fewer in number than Eclipse (and roughly on a par with IntelliJ IDEA). The old wisdom that Eclipse plug-ins eventually migrate to the lesser used platforms has been belied by the reality. As I mentioned previously, many tools today are written for Eclipse and ported no further. Perhaps if NetBeans continues to gain adoption at the same rate it has enjoyed during the last five years, this will change, but for the moment the plug-in gap is NetBeans' greatest limitation. In all other respects, NetBeans is the most user-friendly Java IDE.