# Eclipse Platform
Map of Platform Plug-ins

The Eclipse Platform provides basic support for plug-ins, resources, and the workbench.

The Eclipse Platform itself is divided up into a number of separate plug-ins. The following table shows which API packages are found in which plug-ins as of Eclipse 3.3. This table is useful for determining which plug-ins a given plug-in should include as prerequisites.

API Package | Required plug-in id | Notes
`org.apache.tools.ant[.*] org.apache.tools.bzip2 org.apache.tools.mail org.apache.tools.tar org.apache.tools.zip` | `org.apache.ant` |
`org.apache.lucene[.*]` | `org.apache.lucene` |
`org.eclipse.ant.core` | `org.eclipse.ant.core` |
`org.eclipse.compare org.eclipse.compare.patch org.eclipse.compare.contentmergeviewer org.eclipse.compare.rangedifferencer org.eclipse.compare.structuremergeviewer` | `org.eclipse.compare` |
`org.eclipse.core.commands org.eclipse.core.commands.common org.eclipse.core.commands.contexts org.eclipse.core.commands.operations` | `org.eclipse.core.commands` |
`org.eclipse.core.databinding org.eclipse.core.databinding.conversion org.eclipse.core.databinding.observable org.eclipse.core.databinding.observable.list org.eclipse.core.databinding.observable.map org.eclipse.core.databinding.observable.masterdetail org.eclipse.core.databinding.observable.set org.eclipse.core.databinding.observable.value org.eclipse.core.databinding.util org.eclipse.core.databinding.validation` | `org.eclipse.core.databinding` |
`org.eclipse.core.databinding.beans` | `org.eclipse.core.databinding.beans` |
`org.eclipse.core.expressions` | `org.eclipse.core.expressions` |
`org.eclipse.core.filebuffers org.eclipse.core.filebuffers.manipulation` | `org.eclipse.core.filebuffers` |
`org.eclipse.core.filesystem org.eclipse.core.filesystem` | `org.eclipse.core.filesystem.provider` |
`org.eclipse.core.resources org.eclipse.core.resources.mapping org.eclipse.core.resources.refresh org.eclipse.core.resources.team` | `org.eclipse.core.resources` |
`org.eclipse.core.runtime` | `org.eclipse.core.runtime org.eclipse.equinox.registry org.eclipse.equinox.common` | [1]
`org.eclipse.core.runtime.dynamichelpers org.eclipse.core.runtime.spi org.eclipse.equinox.http.registry` | `org.eclipse.equinox.registry` |
`org.eclipse.core.runtime.content` | `org.eclipse.core.contenttype` |
`org.eclipse.core.runtime.jobs` | `org.eclipse.core.jobs` |
`org.eclipse.core.runtime.preferences` | `org.eclipse.equinox.preferences` |
`org.eclipse.core.boot (obsolete) org.eclipse.core.runtime.model (obsolete)` | `org.eclipse.core.runtime.compatibility` | [2]
`org.eclipse.core.variables` | `org.eclipse.core.variables` |
`org.eclipse.core.net.proxy` | `org.eclipse.core.net` |
`org.eclipse.debug.core org.eclipse.debug.core.commands org.eclipse.debug.core.model org.eclipse.debug.core.sourcelookup org.eclipse.debug.core.sourcelookup.containers` | `org.eclipse.debug.core` |
`org.eclipse.debug.ui org.eclipse.debug.ui.actions org.eclipse.debug.ui.console org.eclipse.debug.ui.contexts org.eclipse.debug.ui.memory org.eclipse.debug.ui.sourcelookup` | `org.eclipse.debug.ui` |
`org.eclipse.equinox.app` | `org.eclipse.equinox.app` |
`org.eclipse.equinox.http.jetty org.eclipse.equinox.http.servlet` | `org.eclipse.equinox.http.servlet` |
`org.eclipse.equinox.jsp.jasper org.eclipse.equinox.jsp.jasper.registry` | `org.eclipse.equinox.jsp.jasper` |
`org.eclipse.help` | `org.eclipse.help` |
`org.eclipse.help.browser org.eclipse.help.search org.eclipse.help.standalone` | `org.eclipse.help.base` |
`org.eclipse.help.ui org.eclipse.help.ui.browser` | `org.eclipse.help.ui` |
`org.eclipse.jface org.eclipse.jface.action org.eclipse.jface.action.images org.eclipse.jface.bindings org.eclipse.jface.bindings.keys org.eclipse.jface.bindings.keys.formatting org.eclipse.jface.commands org.eclipse.jface.contexts org.eclipse.jface.dialogs org.eclipse.jface.dialogs.images org.eclipse.jface.fieldAssist org.eclipse.jface.fieldAssist.images org.eclipse.jface.images org.eclipse.jface.layout org.eclipse.jface.menus org.eclipse.jface.operation org.eclipse.jface.preference org.eclipse.jface.preference.images org.eclipse.jface.resource org.eclipse.jface.util org.eclipse.jface.viewers org.eclipse.jface.viewers.deferred org.eclipse.jface.window org.eclipse.jface.wizard org.eclipse.jface.wizard.images` | `org.eclipse.jface` | [3]
`org.eclipse.jface.contentassist org.eclipse.jface.contentassist.images org.eclipse.jface.text (split) org.eclipse.jface.text.contentassist org.eclipse.jface.text.formatter org.eclipse.jface.text.hyperlink org.eclipse.jface.text.information org.eclipse.jface.text.link (split) org.eclipse.jface.text.presentation org.eclipse.jface.text.quickassist org.eclipse.jface.text.reconciler org.eclipse.jface.text.revisions org.eclipse.jface.text.rules org.eclipse.jface.text.source (split) org.eclipse.jface.text.source.projection org.eclipse.jface.text.source.projection.images org.eclipse.jface.text.templates (split) org.eclipse.jface.text.templates.persistence` | `org.eclipse.jface.text` | [4]
`org.eclipse.jface.text (split) org.eclipse.jface.text.link (split) org.eclipse.jface.text.projection org.eclipse.jface.text.source (split) org.eclipse.jface.text.templates (split) org.eclipse.text.edits org.eclipse.text.undo` | `org.eclipse.text` | [4]
`org.eclipse.jface.databinding.swt org.eclipse.jface.databinding.viewers org.eclipse.jface.databinding.wizard` | `org.eclipse.jface.databinding` |
`org.eclipse.jsch.core` | `org.eclipse.jsch.core` |
`org.eclipse.jsch.ui` | `org.eclipse.jsch.ui` |
`org.eclipse.ltk.core.refactoring org.eclipse.ltk.core.refactoring.history org.eclipse.ltk.core.refactoring.model org.eclipse.ltk.core.refactoring.participants` | `org.eclipse.ltk.core.refactoring` |
`org.eclipse.ltk.ui.refactoring org.eclipse.ltk.ui.refactoring.actions org.eclipse.ltk.ui.refactoring.history org.eclipse.ltk.ui.refactoring.model` | `org.eclipse.ltk.ui.refactoring` |
`org.eclipse.osgi.event org.eclipse.osgi.framework.console org.eclipse.osgi.framework.eventmgr org.eclipse.osgi.framework.log org.eclipse.osgi.service.datalocation org.eclipse.osgi.service.debug org.eclipse.osgi.service.environment org.eclipse.osgi.service.localization org.eclipse.osgi.service.pluginconversion org.eclipse.osgi.service.resolver org.eclipse.osgi.service.runnable org.eclipse.osgi.service.urlconversion org.eclipse.osgi.storagemanager org.eclipse.osgi.util` | `org.eclipse.osgi` |
`org.eclipse.search.core.text org.eclipse.search.ui org.eclipse.search.ui.actions org.eclipse.search.ui.text` | `org.eclipse.search` |
`org.eclipse.swt org.eclipse.swt.accessibility org.eclipse.swt.awt org.eclipse.swt.browser org.eclipse.swt.custom org.eclipse.swt.dnd org.eclipse.swt.events org.eclipse.swt.graphics org.eclipse.swt.layout org.eclipse.swt.printing org.eclipse.swt.program org.eclipse.swt.widgets` | `org.eclipse.ui` | [5]
`org.eclipse.swt.ole.win32` | `org.eclipse.swt.win32.win32.x86` | [6]
`org.eclipse.team.core org.eclipse.team.core.diff org.eclipse.team.core.diff.provider org.eclipse.team.core.history org.eclipse.team.core.history.provider org.eclipse.team.core.mapping org.eclipse.team.core.mapping.provider org.eclipse.team.core.subscribers org.eclipse.team.core.synchronize org.eclipse.team.core.variants` | `org.eclipse.team.core` |
`org.eclipse.team.ui org.eclipse.team.ui.history org.eclipse.team.ui.mapping org.eclipse.team.ui.synchronize` | `org.eclipse.team.ui` |
`org.eclipse.ui.browser` | `org.eclipse.ui.browser` |
`org.eclipse.ui.cheatsheets` | `org.eclipse.ui.cheatsheets` |
`org.eclipse.ui.console org.eclipse.ui.console.actions` | `org.eclipse.ui.console` |
`org.eclipse.ui.editors.text org.eclipse.ui.editors.text.templates org.eclipse.ui.texteditor (split)` | `org.eclipse.ui.editors` | [7]
`org.eclipse.ui.forms org.eclipse.ui.forms.editor org.eclipse.ui.forms.events org.eclipse.ui.forms.widgets` | `org.eclipse.ui.forms` |
`org.eclipse.ui.navigator` | `org.eclipse.ui.navigator` |
`org.eclipse.ui.navigator.resources` | `org.eclipse.ui.navigator.resources` |
`org.eclipse.ui (split) org.eclipse.ui.about org.eclipse.ui.actions (split) org.eclipse.ui.activities org.eclipse.ui.application org.eclipse.ui.branding org.eclipse.ui.browser org.eclipse.ui.commands org.eclipse.ui.contexts org.eclipse.ui.dialogs (split) org.eclipse.ui.dnd org.eclipse.ui.fieldassist org.eclipse.ui.handlers org.eclipse.ui.help org.eclipse.ui.intro org.eclipse.ui.keys org.eclipse.ui.menus org.eclipse.ui.model (split) org.eclipse.ui.operations org.eclipse.ui.part (split) org.eclipse.ui.plugin org.eclipse.ui.preferences org.eclipse.ui.presentations org.eclipse.ui.progress org.eclipse.ui.services org.eclipse.ui.statushandlers org.eclipse.ui.swt org.eclipse.ui.testing org.eclipse.ui.themes org.eclipse.ui.views org.eclipse.ui.wizards` | `org.eclipse.ui.workbench` | [8,9]
`org.eclipse.ui (split) org.eclipse.ui.actions (split) org.eclipse.ui.dialogs (split) org.eclipse.ui.ide org.eclipse.ui.ide.dialogs org.eclipse.ui.ide.fileSystem org.eclipse.ui.ide.undo org.eclipse.ui.model (split) org.eclipse.ui.part (split) org.eclipse.ui.views.bookmarkexplorer org.eclipse.ui.views.framelist org.eclipse.ui.views.markers org.eclipse.ui.views.navigator org.eclipse.ui.views.properties org.eclipse.ui.views.tasklist org.eclipse.ui.wizards.datatransfer org.eclipse.ui.wizards.newresource` | `org.eclipse.ui.ide` | [9]
`org.eclipse.ui.intro.config` | `org.eclipse.ui.intro` |
`org.eclipse.ui.intro.universal` | `org.eclipse.ui.intro.universal` |
`org.eclipse.ui.views.contentoutline org.eclipse.ui.views.properties` | `org.eclipse.ui.views` |
`org.eclipse.ui.contentassist org.eclipse.ui.texteditor (split) org.eclipse.ui.texteditor.link org.eclipse.ui.texteditor.quickdiff org.eclipse.ui.texteditor.rulers org.eclipse.ui.texteditor.spelling org.eclipse.ui.texteditor.templates` | `org.eclipse.ui.workbench.texteditor` | [7]
`org.eclipse.update.configurator` | `org.eclipse.update.configurator` |
`org.eclipse.update.configuration org.eclipse.update.core org.eclipse.update.core.model org.eclipse.update.operations org.eclipse.update.search org.eclipse.update.standalone` | `org.eclipse.update.core` |
`org.eclipse.update.ui` | `org.eclipse.update.ui` |
`org.osgi.framework org.osgi.service.condpermadmin org.osgi.service.packageadmin org.osgi.service.permissionadmin org.osgi.service.startlevel org.osgi.service.url org.osgi.util.tracker` | `org.eclipse.osgi` |

Note 1: The content of the `org.eclipse.core.runtime` package is provided by the following plug-ins:

- `org.eclipse.equinox.common`
- `org.eclipse.equinox.registry`
- `org.eclipse.core.runtime`

For convenience, plug-ins can continue to specify dependency on the `org.eclipse.core.runtime` plug-in that combines all APIs present in this package. However, to improve modularity, plug-ins are encouraged to list only the required prerequisites.

Note 2: These pre-3.0 API packages are obsolete and have been moved to the `org.eclipse.core.runtime.compatibility` plug-in.

Note 3: Plug-ins needing access to the JFace API must list `org.eclipse.ui` as a prerequisite plug-in. `org.eclipse.ui` re-exports API from the JFace plug-in. The `org.eclipse.jface`plug-in should never be explicitly listed as a prerequisite.

Note 4: Some of the JFace text packages are split between the `org.eclipse.jface.text` and the `org.eclipse.text` plug-ins.

Note 5: Plug-ins needing access to the SWT API must list `org.eclipse.ui` as a prerequisite plug-in. `org.eclipse.ui` re-exports API from the SWT plug-in. The `org.eclipse.swt` plug-in should never be explicitly listed as a prerequisite.

Note 6: The plug-in `org.eclipse.swt.win32.win32.x86` is available on Win32/x86 platforms only.

Note 7: The `org.eclipse.ui.texteditor` package is split between the `org.eclipse.ui.editors` and the `org.eclipse.ui.workbench.texteditor` plug-ins.

Note 8: Plug-ins needing access to the Workbench UI API must list `org.eclipse.ui` as a prerequisite plug-in. `org.eclipse.ui` re-exports API from the `org.eclipse.ui.workbench` plug-in. The `org.eclipse.ui.workbench` plug-in should never be explicitly listed as a prerequisite.

Note 9: Some of the UI packages are split between the `org.eclipse.ui` and the `org.eclipse.ui.ide` plug-ins.