features/
org.foo.sdk/
feature.xml: <includes id="org.foo.rcp" />
<includes id="org.foo.rcp.source" />
build.properties: generate.feature@org.foo.rcp.source = org.foo.rcp
org.foo.rcp/
feature.xml: <plugin id="org.foo.BundleA" />
<plugin id="org.foo.BundleB" />
<plugin id="org.foo.BundleB.win32" fragment="true" os="win32" />
features/
org.foo.rcp.source/
feature.xml: <plugin id="org.foo.rcp.source"/>
<plugin id="org.foo.rcp.source.win32" fragment="true" os="win32" />
plugins/
org.foo.rcp.source/src/
org.foo.BundleA/src.zip
org.foo.BundleB/src.zip
org.foo.rcp.source.win32/src/
org.foo.BundleB.win32/src.zip
generate.feature@<ID do recurso de origem> = <ID do recurso> [, feature@<ID do recurso>] [, plugin@<ID do plug-in>[;unpack="false"]]
features/
org.foo.rcp/
sourceTemplateFeature/<arquivos a serem incluídos no recurso de origem gerado>
sourceTemplatePlugin/<arquivos a serem incluídos no plugin de origem gerado>
sourceTemplateFragment/<arquivos a serem incluídos no fragmento gerado específico da plataforma>
Quaisquer arquivos localizados nessa pasta sourceTemplate serão incluídos no
recurso/plug-in/fragmento gerado apropriado. Especificamente,
os arquivos desses diretórios substituirão os arquivos gerados pelo build
PDE. Isso poderá ser utilizado para fornecer um feature.xml customizado se
houver requisitos relativos a seu recurso de origem que o build PDE não
suporta.
Você pode aninhar recursos de origem fornecendo um
arquivo sourceTemplateFeature/build.properties para seu recurso de origem
gerado que contenha uma propriedade generate.feature para o recurso de origem
aninhado. Também é necessário assegurar que o principal
feature.xml de origem inclua o recurso de origem aninhado e isso deve ser feito utilizando
feature@ ou fornecendo um feature.xml do modelo:
features/
org.foo.sdk/
sourceTemplateFeature/
build.properties: generate.feature@org.foo.nested.source = org.foo.nested
feature.xml: <includes id="org.foo.rcp" />
<includes id="org.foo.rcp.source" />
build.properties: generate.feature@org.foo.rcp.source = org.foo.rcp, feature@org.foo.nested.source
org.foo.rcp/...
org.foo.nested/...
Também é possível gerar um plug-in de origem único com base em um plug-in único em vez de basear a origem em um recurso. A propriedade para fazer isso é:
generate.plugin@<ID do plug-in de origem>=<ID do plug-in>
Exemplo:features/
org.foo.sdk/
feature.xml: <plugin id="org.foo.rcp" />
<plugin id="org.foo.rcp.source" />
build.properties: generate.plugin@org.foo.rcp.source = org.foo.rcp