It’s been over a year since we’ve heard a peep out of Oracle about the NetBeans IDE. But suddenly, today, the company announced that version 7.0 was complete and ready for download.
This new version is the first IDE to support JDK 7. NetBeans 7.0 also adds additional controls and support for both of Oracle’s application servers: WebLogic and GlassFish.
Duncan Mills, senior director of product management for NetBeans, said that this release is primarily intended to give developers an IDE in which they can fully utilize the changes in JDK 7.
“Java SE 7 is not yet finalized, but we’ve been working very closely with the Java team and have a very good set of support built into NetBeans 7, which is hopefully all we’ll need when it comes out. But if there are any last-minute changes, we can release a quick point release to round off the corners,” he said.
While JDK 7 is not yet complete, it is currently available as a developer preview. NetBeans 7 is the first IDE to support this developer preview with syntax handlers and code completion for the updated language. Additionally, this release supports Maven 3 and JUnit 4.8.2.
The support for JDK 7 is not just limited to syntax highlighting, however. Mills said that Java SE 7 introduces a number of changes that can make the language less verbose and easier to work with, particularly around dealing with generics and switches. Those new language changes are understood by NetBeans, and the IDE will suggest where they can be applied to save developers time and effort.
While previous versions of NetBeans had supported deployment to GlassFish and the WebLogic application servers, NetBeans 7 adds the ability to administrate and manage those servers from within the IDE.
“This is more than deployment support,” said Mills. “This is more of an integrated support from within the IDE. Not only can the developer deploy to an application server, they can also manage those servers. I can start and stop that remote server. I can manage the service. If, say, a connection is not defined, I can define that connection remotely for the app server.”