I’ve been following the Netbeans tutorial on using the Nodes API to implement a tree structure with some information in it.
In the second part of the tutorial the author shows how to set up and show a property sheet sheet when an element in the tree structure is selected. Most of the examples work pretty straight forward, but when I tried to adapt the example to my own code, I got a problem with the way the tutorial uses the Java reflection to set the fields of the property sheet. Here is the line in the tutorial:
The other day I was working on a Netbeans project where I had to create a new module that was dependent on a external JAR file. From the platform document I found out that you can add a JAR file in two ways: Using the Library Manager or using a Library Wrapper Module. First I tried the second option, and it worked fine except for one thing – there was no javadoc attached to the jar, and no way to attach it.
Then I tried the other option, adding the JAR as a library using the Libraries option from the Tools menu. Using this method it was possible to add both the javadoc and the source to the library. Unfortunately there was no way to include the library in a project, which kind of renders the whole ting useless. I still don’t know what the Library Manager is supposed to be used for, but apparently not for including JARs in projects.
After Googling for a while, coming up blank on what to do, I got in touch with a Netbeans expert Andrzej Olszak – author of the cool Featureous tool. He already knew the problem from his own work and also knew a work-around:
Select the main module suite, click the New Project… option in the file menu and add a new Library Wrapper Module
Select the JAR file to be included and complete the forms as needed. When you press OK, the new module should be opened along with your other modules.
Right click on the module in the list of projects and select Properties at the bottom of the menu. Select the Libraries node on the left side, and click on the Wrapped JARs tab to the right.
Now you see the same options as on the image above, with the Edit… button disabled. Here comes the trick:
Select the JAR and press Remove, then press the Add JAR button and re-add the same JAR file again… and watch what happens to the Edit… button. Suddenly it is enabled! That is it…
Now you can include the wrapper module as a dependency in any module you like, and the javadoc will be available.
Quick rant… if you, like me, use Ubuntu Hardy Heron or some other Linux distribution with SCIM enabled, and for some reason can’t use the ctrl+space auto-completion feature of Eclipse, check your SCIM key settings. In Hardy Heron SCIM gets input before other applications, like Eclipse, and ctrl+space is captured by SCIM and not send on to Eclipse. To get rid of that, simply delete that combination.
I don’t know why SCIM got enabled in the first place, but it’s pretty annoying. I know it makes you able to write Chinese characters ect. on the fly, but I don’t really need that! At first it had a bloody obnoxious input window pop-up all the time, but that’s easy to disable. For some reason the SCIM status icon in the panel can’t be removed. It has an exit option, but choosing exit only closes the program for a split second, after which it simply starts again. My best advice is simply to delete all keyboad shortcuts.