Plug-in Dependencies

The Dependencies page shows the dependencies that your plug-in has on other plug-ins. On this page, you must list all plug-ins that contribute code to your plug-in project and that are required to be on your project's classpath in order to compile. When you modify the list of dependencies and save the file, PDE will automatically update your classpath.

Required Plug-ins

The Required Plug-ins section specifies your plug-in project's dependencies on other plug-ins by explicitly enumerating these plug-ins. Your plug-in will not resolve or run at runtime if any of your plug-in dependencies are missing or unresolved.

Require-Bundle

Press the Add... button to browse the list of all plug-ins that your plug-in may make a dependency on.

The order of the plug-ins in the list is important because it dictates the class loading order at runtime; therefore, use the Up and Down buttons to organize the list as appropriate.

You can set several properties on each plug-in dependency by selecting a plug-in and clicking the Properties button:

Imported Packages

The Eclipse runtime provides the flexibility of specifying a dependency on a package without explicitly identifying its originating plug-in. These packages are enumerated in the Imported Packages section.

Import-Package

Press the Add... button to browse the list of packages available to your plug-in for importing. PDE filters out packages contributed by plug-ins that are already on your plug-in classpath.

You can set several properties on each package dependency:

Automated Management of Dependencies

The Automated Management of Dependencies section provides a new flexible workflow. This workflow allows you to code your plug-in first and then have PDE analyze your code and automatically generate the list of plug-in dependencies.

Automated Management

Press the Add... button to add plug-ins to the list. Consequently, this action will augment your development build path and your content assist scope accordingly.

These dependencies do not get added to the MANIFEST.MF file immediately; however, you can start coding right away as if they were.

At any time, you can click the add dependencies hyperlink to have PDE analyze your code and generate the correct dependencies in your MANIFEST.MF file via either the Require-Bundle or Import-Package headers.

Dependency Analysis

The Dependency Analysis section contains several useful features that help you examine and optimize your plug-in dependencies to make your plug-in run better.

Dependency Analysis

Since JARs from all the plug-ins listed as dependencies will be on your plug-in runtime classpath, it is very important not to list dependencies that are not required. Otherwise, class loading performance will be detrimentally affected. If you click the Find unused dependencies hyperlink, PDE will find unused and redundant entries in the list of required plug-ins and imported packages and offer to remove them.

Plug-in Editor
Overview Page
Runtime Page
Extensions Page
Extension Points Page
Build Page