A Gradle plugin to build NetBeans modules and RCP applications.
- Builds a module.
- Compiles sources.
- Process manifest by adding deps and required attributes (public packages, friends, version, ...)
- Create module files layout: module JAR, bundled JAR (from dependencies), update tracking?, help files, localization/branding
- Builds NBM file for the module.
- Signing can be configured in a build script
- Runs unit tests
- It is possible to run NetBeans with this module installed.
See the example build script to find how to customize module build. Things that you need to do in your build script include:
- Apply the plugin. You can follow the directions from Gradle plugin portal
- Add a NetBeans Maven repository or any other source of NetBeans modules.
- Add
nbm
section defining model how the module should be built. Until there is a better documentation the available properties can be found in an extension class - Optionally you can add an
Exec
task to run NetBeans with this module. The sample creates anetbeans.conf
file where it adds a property specifying location of extra module and runs NetBeans using its own user directory.
NetBeans evangelist Geertjan Wielenga wrote a nice introductory post about How to build NetBeans modules with Gradle.
- fix resource lookup when running annotation processors
- possibly generate files from annotations into special directory to simplify merges
- solve AUC generation
- testing
- module dependencies: use new configuration(s) to allow changes
- solve how to run multiple modules together (fileTree copying + netBeansRun)
- autoload/eager modules
- RCP applications
- Run NetBeans with this module
- support debugging (optional)
- same as above for multiple modules
- interdependencies (implementation deps)
- generate autoupdate center files layout
- Build an application
- Run it
- Create an installer
- Run tests
To do a release run
./gradlew release -Prelease.scope=minor -Prelease.stage=final