# Feature Export

PDE provides a Feature Export wizard to export features and constituent plug-ins and fragments into a form that is suitable for deployment. The wizard shields you from Ant scripts and does not pollute your workspace with resources generated during the build operation. The wizard is available under File > Export... > Plug-in Development > Deployable features .

## Feature Selection

The wizard displays all the non-binary features found in the workspace.

Select the features that you want to export. If you find yourself exporting the same set of features over and over, you can press Working Set... to define a working set.

Features are built recursively; therefore, in the case where one feature includes another feature, only the top-level feature needs to be selected in order to export them both.

## Destination

You can choose to export the features and their constituent plug-ins to a directory or to a ZIP archive. You can also choose to export the features in a runnable format and have them installed into your currently running Eclipse host.

If you choose to export to a Directory (the default), the features will be placed in a features/ subdirectory and the plug-ins will be placed in a plugins/ subdirectory of the chosen directory.

If you choose to export to an Archive file, all of the features and plug-ins will be packaged into a single ZIP archive. Also, the root directory structure inside the ZIP starts with features/ and plugins/.

If you choose to export and Install the features will be exported in a runnable format and a p2 repository will be generated. After the export completes, an installation operation will run to install the features. You will be prompted to restart Eclipse when the installation completes. To uninstall your features you must use the Installation Details button on the About Dialog (available by going to Help > About Eclipse SDK). For more details see Exporting and Installing into the Host

## Options

The Export source option results in the exporting of source code as well as binaries. There are two ways to package source with your exported feature. The Generated Source Bundles option will add the ant commands to the export to create separate source bundles for each of the exported plug-ins. For more information on source bundles see the PDE Build entry on Individual Source Bundles. The second option is to Include source in exported plug-ins. This option will package the source files in a src/ folder at the root of the JAR (if exporting in a JAR format). If the plug-in is packaged as a flat directory, the source code will be placed in a source ZIP inside the plug-in directory as a sibling to the library JAR.

The Package as individual JAR archives option packages features and their constituent plug-ins as JARs. If the option is not selected, then the features are exported as flat directories, while their constituent plug-ins are packaged as specified in the feature.xml markup. Plug-in entries that are marked with unpack="false" in the feature.xml are exported as JARs; otherwise, they are exported as directories.

There are two additional options available when packaging as individual JARs. The Generate metadata repository option allows you to also generate p2 metadata along with your exported feature. This allows the directory or archive you are exporting to, to be used as a repository that p2 can install and update from. This option must be turned on when exporting and installing into your running host. The Categorize repository allows the generated metadata repository to be organized by category.. A valid category xml file that includes data for the features being exported must be specified for categories to be created succesfully.

The Qualifier replacement option enables you to substitute a value for the qualifier element in a plug-in's version or feature's version. The version must be in the following format: <major>.<minor>.<micro>.qualifier. For example: 3.3.0.qualifier. Normally, the qualifier represents a build date or identifier.

The Save as Ant script option lets you save the settings of the export operation so that it can be re-executed at a later time without having to go through the wizard again. Like the export operation, the Ant task runs as an asynchronous job; therefore, it may not be suitable to incorporate it as a part of a larger Ant script.

Allow binary cycles in target platform is an option that controls how the export operation deals with cycles in the dependency graph for a plug-in. PDE Build cannot compile if a cycle is detected. However, if a cycle only contains binary plug-ins from the target platform, turning on this option will allow PDE Build to continue.

If the Use class files compiled in the workspace option is turned on, rather than compiling files as part of the export operation, the binary files in the workspace that were compiled by Eclipse are used. This should improve performance as it skips the compilation phase, but your workspace must have successfully compiled

## JAR Signing

The JAR Signing tab is only visible when the Package as individual JAR archives option is selected on the Options tab.

To sign the JARs, you must be running Eclipse with a full JDK, rather than just a JRE.

The Keystore location, Keypass, Alias and Password fields are all required for the signing operation.

## Java Web Start

The Java Web Start tab is only available when the Directory option is selected on the Destination tab and the Package as individual JAR archives option is selected on the Options tab.

.

The Site URL and JRE version fields are both required.

Export Wizards
Plug-in Export Wizard

Export and Install into the Running Host