This document contains a description of the NetBeans Auto Update content management process, including guidelines for module providers interacting with NetBeans Auto Update centers. This is intended to help to prevent inconsistent NetBeans Auto Update center structures and module categorization problems. It should also prevent the posting of unreliable and duplicate modules on Auto Update centers. To achieve that, we need a clearly defined process, module criteria, and steps necessary to add or remove modules on Auto Update. This process is driven by a small team established for these purposes (
Before we start to describe the steps necessary to add or remove modules on Auto Update center, it's necessary to understand all of the entities involved in the Auto Update content management process. This document section should setup such context.
NetBeans Plugins (NBM files) are basically plug-in modules that extend or upgrade NetBeans functionality. (See: NBM package technology for more information.) These modules are mainly used for distribution from an
UC. Note: NetBeans modules can be installed locally as well.
NetBeans module types
NetBeans modules can be classified based on the following categories of distribution license type:
NetBeans (NetBeans CVS hosted modules - open source license)
Third Party (Modules whose sources are not hosted in NetBeans CVS)
Third Party open source (open source license)
Third Party free (no usage restrictions - freeware type of license)
Third Party evaluation (evaluation version of commercial module - evaluation license )
Third Party commercial (commercial modules, which need to be purchased - i.e. N/A for AU, but for the NetBeans module catalogue )
Note: NetBeans modules can be classified based on other criteria as well (e.g. quality, functionality, L10N,...)
NetBeans module hosting options
There are several options for hosting and distributing of NetBeans modules:
NetBeans UC (NBM file is at NetBeans.org site)
Module provider (NBM file is at a third-party module provider web site)
NBM module is made available directly (without click-through web form). Such a module can be linked from relevant NetBeans Third party AUC.
NBM module is made available indirectly (with click-through web form). Such a module can not be used for AU distribution, but can be listed in the NetBeans module catalogue
Autoupdate is a NetBeans plugin module that enables you to install NetBeans modules from an
UC or a local directory.
There are predefined UC URL's in each release. They are defined in bundles packaged separately from module code, so it's easy to "brand/localize" them. There are following UC references predefined: [x]Stable, [x]Third party, Beta and
The NetBeans Module Catalogue is a set of web pages that contains a references to NetBeans add-on modules, including third party commercial modules, and other modules that are not directly available from the NetBeans site.
Membership - This team is designed to be a small working group consisting of build masters, QA, evangelism and web-team representatives. It should be also open to anybody who is able to take on any Auto Update content management responsibility.
Role - In general, the Aumasters team is responsible for Auto Update content. This team activities differs dependent on AUC type.
Stable AUC definition (modules list, AUC folders and modules categorization)
Beta and Third party module vendors invitation for inclusion
Review of requests to add/remove module
Monitor AU modules criteria (quality)
Review requests to add/remove module
Monitor AU modules criteria (quality)
Note: If the Aumasters team realizes that a module doesn't comply with the AU publishing criteria, the module owner will be asked to fix it immediately. Otherwise, the module will be removed. If the problem is fixed, the module can be posted on the AU again.
The process to add module to Auto Update consist of the following activities:
Submit request - Module provider submits NBM module with request to add module in specific AUC (See submission request steps for more details).
Aumasters review - Aumasters ask the module provider to demonstrate that all relevant criteria are met. Note: The module owner/vendor has still full responsibility for it. If the module meets all corresponding criteria, Aumasters approve the module to be added to AUC. Else the module provider will be asked to fix the problem.
Module addition - Aumasters approved module is posted on AUC.
Announcement - New module addition is announced to the module provider and community (
NetBeans module has to meet following criteria corresponding to the module type:
General (for both NetBeans and third party modules)
The NBM file has to be manually installable. (Place the NBM file in some local directory on your machine, and follow the Auto Update Center wizard instructions for manually installing modules. Do this using the release version of the IDE that your module should work with; if it should work with more than one version, please repeat for each to verify all is working. No exceptions or unexpected messages should appear during the NBM file installation.)
Module AUC folder has to be consistent with the target release AUC structure.
Module category has to be consistent with the target release modules categorization.
Module has a proper description text (provided in the module's "OpenIDE-Module-Long-Description" attribute)
Module has a link to a web page containing more info about the module/module update, e.g. in the form of Release Notes
If the module is an update of module, which is already published, module specification version number has to increase accordingly.
Quality - The module has to pass module provider release quality criteria with the target NetBeans release.
Promotion - The module can contain promotion for commercial versions of the functionality as long as they are done in an unobtrusive way. Examples of allowed promotion: Pricing/Product info in Help | About box, one time message that appears on the module functionality first usage, help content. Examples of disallowed promotion: Repetitive reminders to purchase. Message appearing on the IDE startup. Requirements to register to use the product.
Catalogue - The module will only appear in the Update Center after it was available in the Module Catalogue for at least 1 (one) month.
Licensing - If the module will be hosted on module provider site (preferred option), such module URL will be referenced from autoupdate catalogue XML file only, and no special license review will be necessary. If this is not possible, the module can be hosted on NetBeans site. In this case however, the module needs to go through more detailed legal review. There are additional criteria dependent on the license type.
Third party free and open source Such a module needs to have a license that permits the module user free usage (including commercial) for unlimited time. A typical example would be "stripped down" version of a commercial module.
Third party evaluation Such a module can contain commercial (e.g. "try & buy") type of license. Note: In case of "try & buy" type of license, the NetBeans has still run smoothly after the license expires (just the evaluation module stop work).
Submit the NBM file with filled-in request form to
. Somebody from Aumasters should respond within two days. Note: If your module is more than say a few hundred kilobytes, please try to make it available somewhere online (e.g. on your personal homepage). If you have no access to webspace, please contact webmaster.
Wait for Aumasters feedback and/or module addition announcement.