Sunday, November 13, 2005

Building the NetBeans 5 graph project

There's an interesting NetBeans 5 project called graph.
Graph Library has been designed to support visualization and editing of node-edge structures using drag'n'drop style of work.

The library has been used in the Visual Designer in NetBeans Mobility Pack 4.1.
The directions for how to acquire and build graph are a bit cryptic. What follows are the steps I followed to download and build graph.
  1. Create a top-level directory to hold everything. In my case I created one called 'netbeans'.
  2. Change directory into netbeans, and log into the NetBeans cvs: "cvs -d :pserver:[login-name]@cvs.netbeans.org:/cvs login". Note that you'll have to register and have a login-name to start with.
  3. Checkout three modules; graph, nbbuild, and openide: "cvs -d :pserver:anoncvs@cvs.netbeans.org:/cvs checkout graph", "cvs -d :pserver:anoncvs@cvs.netbeans.org:/cvs checkout nbbuild", and "cvs -d :pserver:anoncvs@cvs.netbeans.org:/cvs checkout openide". When you're finished, you should have three directories named graph, nbbuild, and openide under your current top-level directory.
  4. cd down to nbbuild and run ant. Ignore any errors at this point.
  5. cd down to openide/util and run ant.
  6. cd down to graph/lib and run ant. You should successfully build the jar file. The jar file is back under nbbuild, in the directory nbbuild/netbeans/extra/modules.
  7. cd down to graph/vmd and run ant. You should successfully build the jar file and it will be in the same location as the library file.
  8. cd down to graph/examples and run ant. Not only will the application be built, but the application will run and display a run dialog (see right).
And that's about the size of it so far. I will say that it was easier and faster to just use the command-line cvs tool rather than the built-in cvs capabilities of either NetBeans 5 or Eclipse. I did have to use the better browse feature of Eclipse 3 (3.2 M3) to look at the repository and find out which additional modules to check out, based on the initial dependency failures when building graph for the first time. Once you set up a cvs checkout, you can use NetBeans 5 to keep it up to date. But getting it going exclusively through NetBeans is still quite a bit rough.

But that's really beside the point. I'll make it work because of what that package has to offer. One of the selections is DND (Drag-N-Drop), which you see a screenshot of below. I can quite easily see where it would fit into a project I am currently involved with. Not just the graph module, but even using NetBeans 5 as a rich client platform, and even throwing in some of the more interesting widgets on the SwingX project.



I need a GUI application that allows me to quickly build up a schematic showing relationships and information flows between elements and then to use that schematic to 'program' a larger system-of-systems to perform a task. The SoS needs to be flexible enough that it can be pulled apart (like Legos) and rebuilt to do something else with a mere restart of the overall system.

Every time I think I have NetBeans all figured out and ready to wash my hands of it and stick with Eclipse, they go and pull out something like this. And this is a good thing.

1 comment:

All comments are checked. Comment SPAM will be blocked and deleted.

Note: Only a member of this blog may post a comment.