Geertjan's Blog

  • May 18, 2005

Docking a NetBeans Module in the IDE (Part 2)

Geertjan Wielenga
Product Manager
I've been working on docking the Anagrams module that I created in NetBeans Modules for Dummies (Part 6). When docking a module, the following files are necessary:
  • A Java class that extends TopComponent
  • A Java class that extends CallableSystemAction
  • A layer file (.xml extension)
  • A manifest file (.mf extension)
  • A mode settings file (.settings extension)
  • A windows system top component reference file (.wstcref extension)

On top of that, there's also got to be some way to actually build the module. For that, I'm using the Ant scripts referred to in previous blog entries. So this is what everything looks like when fitted together in the IDE:

Of course, Rich Unger's FeedReader, A NetBeans Platform Sample and Tutorial is the document which goes into this whole area in quite a lot of detail. In fact, that document is the only tutorial currently available (as far as I'm aware anyway) on this topic. And so that's the document that I've been working through, together with this document that I referred to yesterday.

Join the discussion

Comments ( 2 )
  • Rich Unger Thursday, May 19, 2005

    Glad you like my document. Really nice content in this blog, BTW.

    If you're going to JavaOne, Yarda and I are giving a presentation based on the FeedReader tutorial.

    Also, module development is about to get a whole lot easier. Jesse's working on a new apisupport module with a nice GUI and everything. No more hand-editing project.xml files, and a lot of the ant scripting for library modules goes away.

  • Geertjan Friday, May 20, 2005
    Rich, I haven't needed to do ANY hand-editing of project.xml because I've been converting existing J2SE applications to NetBeans Modules. This means that none of my NetBeans Modules are 'actually' modules -- they're just J2SE applications with a manifest.mf, Action class, and layer XML after which I build the .nbm file using Ant scripts. This works, although it's probably not the most official way of doing things. Of course, in 4.2 all of this will be unnecessary because, as you point out, the new apisupport module will handle all of this for me. Thanks for responding and I hope you'll continue doing so.
Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.