Een feature is een manier van groeperen en beschrijven van verschillende typen functionaliteit die samen een product vormen. Het groeperen van plugins in features maakt het mogelijk het product te installeren en bij te werken met behulp van de Eclipse-updateserver en de verwante ondersteuning. Het platform zelf wordt gepartitioneerd in drie hoofdfeatures:
Er zijn verschillende minder-belangrijke features, bijvoorbeeld voorbeelden en OS-afhankelijke onderdelen van het platform.
Opmerking: de platforminstallatie en het update-framework maken het mogelijk eigen aangepaste implementaties te maken van de concepten die hier worden besproken. Dit betekent dat u uw eigen typen features kunt definiëren (pakketindelingen, installatieprocedures enzovoort) en ook uw eigen typen serversites voor het bijwerken van uw features kunt maken. De rest van deze beschrijving is gericht op de standaardimplementaties van het platform voor features en update-sites.
Features bevatten geen code. Features beschrijven een set plugins die de functie van de feature en de informatie over hoe de feature moet worden bijgewerkt, leveren. Features worden ingepakt in een feature archive-bestand en worden beschreven met behulp van een feature-manifestbestand, feature.xml. Het eerste gedeelte van het manifest voor de platformfeature:
<?xml version="1.0" encoding="UTF-8"?> <feature id="org.eclipse.platform" label="%featureName" version="3.0.0" provider-name="%providerName" plugin="" image="eclipse_update_120.jpg" primary="true" application="org.eclipse.ui.ide.workbench"> <description> %description </description> <license url="%licenseURL"> %license </license> <url> <update label="%updateSiteName" url="http://update.eclipse.org/updates/3.0"/> <discovery label="%updateSiteName" url="http://update.eclipse.org/updates/3.0"/> </url> <plugin id="org.apache.ant" download-size="0" install-size="0" version="1.6.1"/> <plugin id="org.apache.lucene" download-size="0" install-size="0" version="1.3.0"/> ... </feature>