Netbeans

Netbeans is an integrated development environment (IDE) for developing with Java, JavaScript, PHP, Python, Ruby, Groovy, C, C++, Scala, Clojure, and other languages.

From Wikipedia article:

"The NetBeans IDE is written in Java and can run anywhere a compatible JVM is installed, including Windows, Mac OS, Linux, and Solaris. A JDK is required for Java development functionality, but is not required for development in other programming languages."

Installation

Install the netbeans package.

Tips and tricks

Note: The global netbeans.conf /usr/share/netbeans/etc/netbeans.conf will be overwritten during updates. To keep changes add them to your local netbeans.conf ~/.netbeans/<ver>/etc/netbeans.conf (you will need to create the etc dir and the .conf file).
  • Settings in local version of netbeans.conf override the same settings in the global copy of the file.
  • Command-line options override settings in either of the configuration files.

Font antialiasing in Netbeans

Netbeans Specifically

Add -J-Dswing.aatext=TRUE -J-Dawt.useSystemAAFontSettings=on to the 'netbeans_default_options' line of your netbeans.conf file.

Java Generally

See Java#Better font rendering.

Look and feel

To change Netbeans look and feel, go to Tools>Options>Appearance>Look and Feel

To add dark look and feels install the Dark Look And Feel Themes plugin via Tools>Plugin>Available Plugins

Maven problems with small tmpfs

If your system has a small tmpfs partition you will have problems unpacking the maven index (will continue downloading again after failing to unpack). To remedy this add netbeans_default_options="-J-client -J-Xss2m -J-Xms32m -J-XX:PermSize=32m -J-Dapple.laf.useScreenMenuBar=true -J-Dapple.awt.graphics.UseQuartz=true -J-Dsun.java2d.noddraw=true -J-Dsun.java2d.dpiaware=true -J-Dsun.zip.disableMemoryMapping=true -J-Djava.io.tmpdir=/path/to/tmp/dir" to the end of your netbeans.conf file.

Integrate with tomcat

It is possible to debug web applications running on tomcat within netbeans:

First install tomcat.

You will need to create a configuration and deployment folder for your user, for example in ~/.tomcat7.

Copy /etc/tomcat7/ in ~/.tomcat7/conf.

Make sure to configure ~/.tomcat7/conf/tomcat-users.xml with a user having tomcat admin permissions so that netbeans can deploy applications.

Copy /var/lib/tomcat7/webapps to ~/.tomcat7/webapps.


Then, in Netbeans go to Tools>Servers>Add Server and select Apache Tomcat.

In server location specify /usr/share/tomcat7

Check "Use Private Configuration Folder (Catalina Base)" and specify ~/.tomcat7.

Finally, set the username and password you configured in /etc/tomcat7/tomcat-users.xml.

Troubleshooting

OpenJDK vs Sun's JDK

Netbeans 7.0-1 will not ALWAYS work with OpenJDK. Some reported issues are:

  • Starting - In some cases, netbeans will not start.
  • Installation - The .sh script provided by netbeans will not launch wizard (any proofs?).
  • JavaFX module does not work (see FS#29843).

Glassfish server - Can`t download Glassfish server I/O Exception

If you are trying add new Glassfish server, you can`t download the server. Netbeans returns

I/O Exception: http://java.net/download/glassgish/3.0.1/release/glassfish-3.0.1-ml.zip

Solution is:

Integrate Netbeans with kwallet

Netbeans may need to store some passwords. It can do that in kwallet. See this article in the Netbeans wiki.

However, you need to install and configure qtchooser so that netbeans find the qdbus command:

$ ln -s /etc/xdg/qtchooser/4.conf ~/.config/qtchooser/default.conf

See forum discussion [1]