Primary feature

When the Eclipse platform is started, exactly one feature gets to control the overall "personality" or "branding" of the platform, including the splash screen, window images, about box, welcome page, and other customizable aspects of the platform.  This feature is called the product's primary feature.

Let's look again at the description of the platform feature in its platform manifest:

feature 
	id="org.eclipse.platform" 
	label="%featureName" 
	version="2.0.0" 
	provider-name="%providerName" 
	primary="true" 
	application="org.eclipse.ui.workbench">

The platform feature has been designated as a primary feature. Although it's possible to designate many features as primary features in their feature.xml files, only one primary feature gets control when the platform is launched.  This is controlled in the product's install.ini file underneath the eclipse directory.  The feature.default.id property in this file designates the primary feature for the product.  Typically, a product only defines branding information for one feature and designates this feature in the install.ini file.  (If there are multiple eligible primary features, the -feature command line option for eclipse.exe overrides the choice made in install.ini.)

The branding information for the feature is located in a plug-in of the same name as the primary feature.  The files that designate and define branding information for our hypothetical acmeweb application are highlighted in the sample directory structure below:

acmeweb/
	acmeweb.exe	(product executable - invokes eclipse.exe and specifies the primary feature)
	eclipse/
		.eclipseproduct
		eclipse.exe
		startup.jar
		install.ini
		.config/
		platform.cfg
		jre/
		features/
			com.example.acme.acmefeature_1.0.0/    (primary feature)
				feature.xml
			org.eclipse.platform_2.0.0/
			org.eclipse.platform.win32_2.0.0/
		plugins/
			com.example.acme.acmefeature_1.0.0/    (plug-in for primary feature.  Contains branding info.)
				plugin.xml
				about.ini
				about.html
				about.mappings
				about.properties
				acme.gif
				plugin_customization.ini
				splash.jpg
				welcome.xml
			com.example.acme.acmewebsupport_1.0.0/
			org.eclipse.platform_2.0.0/
			...
			links/
			...

Copyright IBM Corporation and others 2000, 2003.