## What's New in 3.0

Here are some of the more interesting or significant changes made to PDE for the 3.0 release of Eclipse since 2.1:

One Plug-in, One Editor | The new plug-in manifest editor is a single multi-page editor that can be used to manage your plug-in and edit all its files (plugin.xml, build.properties, and manifest.mf). PDE transparently handles the task of writing the changes to the right files.
New PDE build configuration editor | There's no longer any reason to dread editing your plug-in's cryptic build.properties file. PDE now provides a specialized build configuration editor that makes this task easy and intuitive.
Unit testing for plug-ins | PDE provides a new launcher for JUnit-based unit test suites for plug-ins. The launcher gives you fine-grained control over the set of plug-ins to run in a test, lets you debug with tracing, and can handle GUI as well as non-GUI plug-ins.
PDE support for advanced runtime options | Plug-in developers wishing to exploit the capabilities of the new OSGi-based platform runtime can now self-host with plug-ins that use explicit OSGi bundle manifests (manifest.mf file). They will be able to import, develop, and test their plug-ins using PDE. To take advantage of the new OSGi-based platform runtime on plug-in creation, PDE's plug-in project creation wizard now has an option for creating plug-ins with explicit OSGi bundle manifests. The Runtime page of the PDE manifest editor exposes one of several OSGi-based runtime features (control of plug-in activation) and will even create a manifest.mf file for your plug-in on demand.
PDE computes plug-in build class paths dynamically | You never need to update the Java build path of your plug-in ever again. PDE uses the JDT classpath container mechanism to dynamically compute the Java build path of a plug-in project. Because classpath containers are resolved on the fly, they are always accurate regardless of which plug-ins you are building against and whether they are loaded in workspace. Refer to the Dynamic Classpaths FAQ for more details.
Improved error log view | Additional features in the tool bar of the Error Log view make it effortless to export, open, or delete the current log. You can also import external logs and reload your workspace log into the view. Events can be organized via filtering and sorting by message, plug-in name, or date. The error log view now lets you inspect the full details of an event, and easily navigate from one event to the next.
Additional exporting functionality | The PDE Export Deployable Plug-ins wizard now allows the plug-ins to be exported as a directory structure, and provides direct access to the preference page with the compiler settings that will be used. Also, the plug-in export operations can now be saved as Ant build scripts so that the same operation can be run later via the Ant runner without having to go through the export wizard.
Expanding the Java search scope and source lookup | The "Add to Java Search" functionality was introduced in 2.1 to expand the scope of the Java search beyond workspace projects to include JARs from external plug-ins that constitute your target platform. Select plug-ins and invoke Add to Java Search via the context menu of the Plug-ins view. PDE now manages and updates references to JARs automatically as you upgrade from build to build, and makes these JARs visible to the debugger. Taking advantage of this functionality will ensure that the debugger will automatically locate the relevant source code (if available).
New feature patch wizard | Available under New > Project...> Plug-in Development > Feature Patch, there is now a wizard to help you create a patch for a feature. You can then publish the patch on an Update site so that customers of your feature can easily download and install it via the Update Manager.
New PDE extension point | The new org.eclipse.pde.ui.newExtension extension point allows a tool to register custom extension editing wizards. These wizards allows developers contributing to extension points to work at a higher level; the wizards handle the conversion into XML elements.