Um recurso é uma maneira de agrupar e descrever funcionalidades diferentes que formam um produto. Agrupar plug-ins em recursos permite que o produto seja instalado e atualizado, utilizando o servidor de atualização do Eclipse e o suporte relacionado. A plataforma é particionada em três recursos principais:
Há outros recursos secundários, como exemplos e partes da plataforma que dependem do S.O.
Nota: A estrutura de instalação e atualização da plataforma permite construir suas próprias implementações personalizadas dos conceitos discutidos aqui. Isto é, é possível definir seus próprios tipos de recursos, (seus formatos de empacotamento, procedimentos de instalação, etc.), além de seus próprios tipos de sites do servidor para atualização dos recursos. O restante desta discussão concentra-se nas implementações padrão da plataforma para sites de recursos e de atualização.
Os recursos não contêm código. Simplesmente descrevem um conjunto de plug-ins que fornecem a função para o recurso e informações sobre como atualizá-lo. Os recursos são empacotados em um arquivo archive de recurso e descrito utilizando um arquivo de manifesto de recurso, feature.xml. A seguir, há a primeira parte do manifesto para o recurso da plataforma:
<?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>
<plug-in id="org.apache.ant"
download-size="0"
install-size="0"
version="1.6.1"/>
<plug-in id="org.apache.lucene"
download-size="0"
install-size="0"
version="1.3.0"/>
...
</feature>