User Tools

Site Tools


info:netbeans

Table of Contents

Netbeans

It seems like a pretty nice IDE, but there must be some reason I still use Eclipse, right?

Positive

  • Seems faster than Eclipse (maybe not on Linux).
  • GUI editor: I just tried it again (2008-06-24) and it seems pretty awesome. It blocks you from editing the code directly, but you can still customize as you like (most of the need for editing manually in Eclipse VE was when it broke things).
  • Good interface for looking at and installing available plugins.
  • Latest version is not as ugly
  • UML editor looks decent (haven't tried it extensively)

Negative

Every time I've tried it in the past, I've gotten frustrated and gone back to Eclipse. Granted, the last time was a C++ project with complex dependencies.

  • I tried installing on Ubuntu at work, and it seemed buggy
    • OpenOffice project creation (component) - wouldn't let me complete the wizard until I restarted the computer
    • Java projects - none of them show up when you try to create/open them
    • Deleting the .netbeans folder solved the Java project issue (first I tried reinstalling Netbeans, which didn't work by itself).
    • The OpenOffice plugin was the one causing the problem. Also, I realized that Netbeans hides exceptions, putting a little icon in the bottom-right that you can click on.
    • Help doesn't work (throws exception); see http://www.netbeans.org/issues/show_bug.cgi?id=127368
  • At first glance, it doesn't seem to be able to format code very well. For instance, it won't correct a simple method signature that extends past the margin.
  • I don't get the library settings screen.

Notes

  • Unlike Eclipse (which has an option), Netbeans refreshes its view on the file system automatically

Ant

For debugging problems with Ant, the verbosity level can be set in Options/Miscellaneous/Ant.

When using the Netbeans-generated Ant files, libraries will be copied into the dist folder only if there is a main class and if a manifest.mf file exists in the base directory (and, unless on Windows, it must be the expected case, which I believe is all lowercase); confer build-impl.xml. Here is how I generated a manifest with the SVN version (this is added to build.xml):

    <!--
    target: version
    Gets the SVN version number using the svnversion command (requires that
    it be in the PATH).
    -->
    <target name="version">
        <exec executable="svnversion" outputproperty="svn.version">
            <arg value="." />
        </exec>
    </target>
 
    <!--
    Add the SVN version to the manifest, which will get put in the JAR
    (build-impl.xml handles that part, and adds the main class and classpath).
 
    Need to do this in the -pre-init target so that build-impl.xml knows that
    a manifest.mf file exists; otherwise it won't use the one we generate,
    and it seems that also it won't copy the libraries into the dist directory.
    -->
    <target name="-pre-init" depends="version">
        <manifest file="manifest.mf">
            <attribute name="Implementation-Version" value="r${svn.version}" />
        </manifest>
    </target>
info/netbeans.txt · Last modified: 2009-10-20 20:25 by sam