Over a million developers have joined DZone.

IntelliJ IDEA and Maven: Great Tools for NetBeans RCP Development

· Java Zone

Discover how powerful static code analysis and ergonomic design make development not only productive but also an enjoyable experience, brought to you in partnership with JetBrains

With NetBeans IDE 7.0, the NetBeans RCP (framework for creating modular Swing applications) will become far more accessible to non-NetBeans IDE users than ever before. That's because the NetBeans IDE was almost a requirement for getting started with NetBeans RCP development, since that IDE alone provides wizards and templates for registering Java classes in the NetBeans RCP registry. From 7.0, the annotations provided for NetBeans RCP development will be significantly expanded, to include Action annotations and TopComponent annotations. At compile-time, the annotations will result in the registrations being generated automatically. As a result, the wizards for getting started with various NetBeans RCP classes will no longer be as essential as they used to be.

To prove the above statements, I populated my local Maven repository with NetBeans modules from a very recent NetBeans 7.0 development build. Once I had done so, I was able to use the latest annotations, meaning that I didn't need to register my TopComponents manually in the registry and I didn't need to create the .settings file and .wstcref file at all, since those entries are also created (within the layer file) at compile-time, via the TopComponent annotation.

So, once I had the latest NBMs in my local Maven repository, I fired up IntelliJ IDEA and used the NetBeans Platform Maven archetype from IntelliJ IDEA, shown below:

When I had completed the above template, I ended up with the following in IntelliJ IDEA:

Next, I used this template for creating new NetBeans modules in my Maven-based NetBeans Platform application:

Then, I used MigLayout for laying out TopComponents, together with annotations for registering them. A bit of tweaking was needed to expose a package as public (I needed to register these manually in the POM) and also for setting dependencies. Not much tweaking through, since more than ever before, the work you now do is all in the Java classes. In fact, for this scenario, I didn't touch the layer file even once:

I believe NetBeans Platform 7.0 will be a great starting point for IntelliJ IDEA users wanting to create meaningful applications on the Java desktop.

Learn more about Kotlin, a new programming language designed to solve problems that software developers face every day brought to you in partnership with JetBrains.

Topics:

The best of DZone straight to your inbox.

SEE AN EXAMPLE
Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.
Subscribe

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}