Which Execution Environment should I use?
Check out the table of execution environments in the Eclipse 3.2 Plan. The execution environment listed in the table is what your plug-in is committed to. If there is an error with the table, please let me know.
Setting the Execution Environment
- open your plug-in manifest in the Plug-in Manifest Editor
- select the Overview tab
- note the section in the lower left corner entitled Execution Environments
- add your appropriate environment(s)
- save the file
- select the link "update the classpath and compiler compliance settings"
- release your changes to the repository
In some cases, a plug-in may require a higher version to compile against, but is able to run perfectly fine against a lower version. For instance, the org.eclipse.osgi bundle will use java.nio.* classes if available. So it must be compiled against J2SE-1.4 but can run on OSGI/Minimum-1.0.
In these cases the EE required to compile against must appear first in the list. So for org.eclipse.osgi, the list (in order) is J2SE-1.4 then OSGI/Minimum-1.0.
Some bundles may think that they require an EE of J2SE-1.4 but really the only special thing that they require from the 1.4 class libraries are the JAXP XML APIs. So in these cases they can be listed as having an EE of J2SE-1.3 because they still will run ok if another bundle is providing the XML APIs.