I\'m just starting with OSGi and Eclipse RCP. Could someone explain to me the difference between \"Eclipse\" and \"Equinox\" as the target platform, when creating a new ecli
Choosing "an OSGi framework": This simply creates a new bundle with no required plug-ins or imported packages (unless you choose an activator in which case the org.osgi.framework package shows up under imported packages).
Choosing Eclipse version: After clicking next the wizard gives you the checkbox "This plug-in will make contributions to the UI" and allows you to create a rich client application
Without any other options an Eclipse plugin will have org.eclipse.core.runtime as a required plugin. If you say the plug-in will make contributions to the UI then org.eclipse.ui is added to required plug-ins. By saying you want to create a rich client application the Templates are different on the final screen and you are forced to choose one to finish. Also your Activator will extend Plugin if you did not choose the UI option and AbstractUIPlugin if you did choose the UI option.
There is nothing different about the bundles that are created in either manner, the wizard just sets up some default required plug-ins/imported packages for you. Of course as VonC pointed out some of the dependencies setup by the Eclipse route may not be compatible with other OSGi implementations.
It is about the environement in which the module you will be creating will run: see this
Eclipse Equinox is the runtime environment on which the Eclipse IDE and Eclipse RCP application are based.
In Eclipse the smallest unit of modularization is a plugin. The terms plugin and bundle are (almost) interchangable. An Eclipse plugin is also an OSGi bundle and vice versa.
See Equinox Quick Start Guide:
The Equinox OSGi framework implementation forms the underpinnings of the Eclipse RCP and IDE platforms but it is in fact a fully standalone OSGi implementation.
You can run a bundle independently from Eclipse:
java -jar org.eclipse.osgi_3.2.0.jar -console
Once this is running you will see an
osgi>
prompt. This is the OSGi console waiting for you to type commands