Products and features
An Eclipse based 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.
Products include all the code and plug-ins needed to run them. This
includes a Java runtime environment (JRE) and the Eclipse platform code.
The plug-in code, JRE, and Eclipse platform are typically installed with a
product-specific installation program. Product providers are free to use
any installation tool or program that is appropriate for their needs.
Once installed, the user launches the product and is presented with an
Eclipse workbench configured specifically for the purpose supported by the
product, such as web development, C++ program development, or any other
purpose. The platform makes it easy to configure labels, about dialogs,
graphics, and splash screens, so that the user has no concept of a platform
workbench, but instead views the workbench as the main window of the product
itself.
The top level directory structure of such a product looks something like this
for a hypothetical product called "AcmeWeb" that has been installed on
a Windows platform:
acmeweb/
acmeweb.exe (product executable)
eclipse/ (directory for installed Eclipse files)
.eclipseproduct (marker file)
artifacts.xml (bundle pool contents)
eclipse.exe
eclipse.ini
configuration/
config.ini
dropins/
jre/
features/ (installed features if any)
com.example.acme.acmefeature_1.0.0/
feature.xml
...
plugins/
org.eclipse.equinox.launcher_1.0.0.v20070530.jar
org.eclipse.equinox.launcher.win32.win32.x86/
com.example.acme.acmefeature_1.0.0/
plugin.xml
about.ini
about.html
about.mappings
about.properties
acme.png
splash.jpg
com.example.acme.acmewebsupport_1.0.0/
...
links/
...
p2/
...
There are actually two ways of defining a product in Eclipse. The preferred
mechanism is to
use the
products extension point.
This extension point allows you to define your product and customize
branding such as splash screens, window icons, and
the like.