Martin @ Blog

software development and life.

Flower

NetBeans 6.5: first experiences

Last week, Sun Microsystems introduced a new version of their Integrated Development Envorinment NetBeans. Version 6.5 introduces a lot of intresting new features and got a lot of attention in the media. Since the rise of Eclipse, NetBeans was somewhat ignored by many developers or at least by the ones I know (including myself). In order to get more knowledge about it, I decided to try it and test if it was suitable for a project I am currently working on.

Version 6.5 introduces features like the possibility to migrate Eclipse projects to NetBeans, improved Maven support and support for PHP development. These features were the most interesting for me, since I am working on a project which uses Maven to build and was until now developed in Eclipse. The PHP support is interesting, because in my free time I do some occasional PHP development for a website I maintain. I didn’t use NetBeans yet for PHP development, but based on the screencasts on Netbeans.org I think this is one of the better IDE’s for PHP development.
One positive thing which is immediately noticeable, is the speed of NetBeans. I used NetBeans with a Java 2 EE project, based on MMBase and using Tomcat as application server. Compared to Eclipse, the response times of the user interface is much better.
When using Eclipse, I used WTP for testing my application on Tomcat. WTP uses seperate configuration files for Tomcat, which doesn’t affect your Tomcat installation. NetBeans provides similar functionality, but depends on the configuration files in your Tomcat directory. This has positive and negative effects. For example, it is easer to find problems with your configuration, but on the other hand, it is harder to use your Tomcat installation also for other stuff.
The Maven support in NetBeans is very good, especially compared to Eclipse. NetBeans uses the Maven pom.xml file as the main project file. The advantage of this, is that the build is identical to the build which is deployed on the production system and created by the continuous build. Eclipse doesn’t have a similar option. Another good thing in NetBeans is that when editing JSP files, after saving they are almost immediately deployed on the server. When using Eclipse, it takes several seconds before a changed JSP is deployed on the server and therefore is available to test.

Less positive in NetBeans is in my opinion the support for Subversion. Eclipse provides a ‘Team Synchronisation’ view, which gives a clear overview of changes of your working copy compared to the Subversion repository. NetBeans has a similar feature, but in my opinion it is a little bit more complicated and provides less overview than the Eclipse implementation. I think in general, the user interface of NetBeans is a bit cleaner, but I find it harder to get some views. For example, the log file of a application running in Tomcat is not always easy accessible. Another miss is the lack of a equivalent to the search windows provided by Eclipse. In Eclipse, ctrl-3 (or Command-3 on Mac OS X) provides a global search for almost every part the IDE has, including views, commands, files and types. The ctrl-shift-r shortcut in Eclipse gives an ‘open resource’ windows, which searches through all files in a workspace. NetBeans provides a similar windows, but the search is much slower, which is a bit annoying. In general, I think NetBeans has fewer (handy) shortcuts, but maybe that’s because I’m more used to Eclipse and its shortcuts.

After about a week of experimenting, I thing NetBeans is really a useful IDE and is certainly a competitor for Eclipse. Especially for dynamic languages like Groovy, Scala, Ruby, PHP and Javascript it is probably better than Eclipse. For Java development, I’m currently more used to Eclipse, but the features of both IDE’s are very comparable.

Comments are closed.