uDig

«  Plugin Debug and Tracing Support   ::   Contents   ::   Making a Branding Plugin  »

Working With Features

This page explains how to create a Feature for one or more of your Plug-ins. A Feature is a bundle of Plug-ins. The main reasons for creating a Feature are:

Products can be created from Plug-ins or Features, but if they are created from Features then an update site can be used to keep the product up-to-date. This cannot be done with out a Feature based product.

New Features can also be installed by the Eclipse update framework. If a Feature is added to an update site then any Eclipse based application can install the Feature using the Software Updater (usually under the Help menu).

Creating a Feature

  1. Create a Feature Project. New ‣ Project.

  2. Select Feature Project in the Plug-in Development category

  3. The naming convention is:

    1. Feature ID - An ID usually URI.featureName for example net.refractions.community.jody.visual

    2. Feature Project - the Feature ID with _feature appended to the end.

    3. Feature Name - Unimportant but should usually be translatable (%feature.name in the feature.xml and the key/value pair in the plugin.properties)

      image0

  4. Press Finish

  5. A nice editor for the Feature.xml is opened. In the Branding Plug-in Field enter the Branding plug-in you created for this feature (or enter the name of the Branding plug-in you are going to create).

  6. Switch to the Plug-ins tab of the editor (tabs are across the bottom)

  7. Press Add ...

  8. Select the Plug-ins that will be part of the Feature

    image1

There is numerous other options for specifying what Features and Plug-ins the Feature depends on as well as what versions and how to install the Feature. This is all that is really required to make a Feature.

Exporting a Feature

  1. Open the feature.xml file
  2. Switch to the Overview tab
  3. Press Export Wizard
  4. Follow wizard’s instructions

Here is a good link:

«  Plugin Debug and Tracing Support   ::   Contents   ::   Making a Branding Plugin  »