What are the differences? What gets used for which purpose?
As the RCP tutorial details
Plugins are the smallest deployable and installable software components of Eclipse.
Each plugin can define extension-points which define possibilities for functionality contributions (code and non-code) by other plugins. Non-code functionality contributions can, for example, provide help content.
The basis for this architecture is the runtime environment Equinox of Eclipse which is the reference implementation of OSGI. See OSGi development - Tutorial for details.
The Plugin concept of Eclipse is the same as the bundle concept of OSGI. Generally speaking a OSGI bundle equals a Plugin and vice-versa.
The Feature Tutorial mentions
A feature project is basically a list of plugins and other features which can be understood as a logical separate unit.
Eclipse uses feature projects for the updates manager and for the build process. You can also supply a software license with a feature
Finally, a product is a stand-alone program built with the Eclipse platform. A product may optionally be packaged and delivered as one or more features, which are simply groupings of plug-ins that are managed as a single entity by the Eclipse update mechanisms.
So:
plugins can be grouped into features which can be packaged as one executable unit called product.
Dependencies
tab of the Product
allows you to list features (group of plugins) as well as plugins needed for your product (help.eclipse.org/indigo/…: "The Dependencies page lists all Required Features and Plug-ins that must be present in the product before the Update Manager installs this feature. If any of these pre-requisites are missing, the feature will not be installed". The Dependencies
tab of the Plugin.xml
only lists other needed plugins. –
Nocturnal MANIFEST.MF
and in plugin.xml
and in build.properties.xml
of the same plugin?I can't wrap my head around this and make random changes to the project –
Barfuss MANIFEST.MF
will contained the "resolved" list of needed plugins at runtime (see help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.pde.doc.user%2Fguide%2Ftools%2Feditors%2Fmanifest_editor%2Fdependencies.htm): "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." So you shouldn't modify directly that part. The plugin.xml
can only contain the direct dependencies (as opposed to all dep. in MANIFEST.ML) –
Nocturnal build.properties
, which only concern the needed plugins at compile time, for building the plugin. –
Nocturnal © 2022 - 2024 — McMap. All rights reserved.
Dependencies
tab of theFeature
project and theDependencies
tab of thePlugin.xml
and theDependencies
tab of theProduct
?Would it be possible to explain? – Barfuss