Plug-in Content

The Plug-in Content wizard page allows you to customize the plug-in data.

Plug-in Properties

A Plug-in ID is mandatory and must comply with the plugin.dtd. It is recommended - but not mandatory - for the plug-in ID to match the plug-in project name.

A Plug-in Version is mandatory and must be of the form major.minor.micro.qualifier (e.g. 1.3.0).

A Plug-in Name is the translatable presentation name of the plug-in. This field is required.

A Plug-in Provider is the translatable name of the plug-in provider. This field is optional.

Classpath refers to the location of the code once the plug-in is packaged. As of Eclipse 3.1, it is recommended to ship plug-ins as JARs with code at the root of the JAR and leave the classpath field empty.

Plug-in Options

An activator is a Java class that controls the plug-in's life cycle. It is only needed if you require to do work upon the startup or shutdown of your plug-in.

The choice of whether the plug-in will make contributions to the UI affects the code generated for the activator:

- If the plug-in is a UI plug-in, the activator class extends the org.eclipse.ui.plugin.AbstractUIPlugin class.
- If the plug-in is headless (i.e. non-UI), the activator extends the org.eclipse.core.runtime.Plugin class.
- If the plug-in is targeted for an OSGi framework, the activator implements the org.osgi.framework.BundleActivator interface.

The choice of a UI vs. headless plug-in also controls what templates are available on the next wizard page.

Rich Client Application

At a minimum, a rich client application requires a plug-in with an org.eclipse.core.runtime.applications extension. If branding is desired, an org.eclipse.core.runtime.products extension is required. By answering Yes to the question in the Rich Client Application section, you will be required to go to the Templates page where you can choose an RCP template that will generate all the required extensions.