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 característica fuente> = <id característica> [, feature@<id característica>] [, plugin@<id plugin>[;unpack="false"]]
features/
org.foo.rcp/
sourceTemplateFeature/<archivos que deben incluirse en la característica de código fuente generada>
sourceTemplatePlugin/<archivos que deben incluirse en el plugin de código fuente generado>
sourceTemplateFragment/<archivos que deben incluirse en los fragmentos específicos de plataforma generados>
Los archivos ubicados en estas carpetas sourceTemplate se incluirán en la
característica, plug-in o fragmento adecuado que se genere.
Específicamente, los archivos de estos directorios sustituirán a los archivos generados
por la construcción PDE. Esto puede utilizarse para suministrar un archivo
feature.xml personalizado si existen requisitos para la característica de código fuente
a los que la construcción PDE no da soporte.
Puede anidar características de código fuente suministrando un archivo
sourceTemplateFeature/build.properties para la característica de código fuente generada
que contenga una propiedad generate.feature para la característica de código fuente
anidada. También deberá asegurarse de que el archivo feature.xml de código
fuente de alto nivel contenga la característica de código fuente anidada, mediante la
utilización de feature@ o suministrando un archivo de plantilla feature.xml:
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/...
También es posible generar un solo plug-in de código fuente basado en un solo plug-in de código fuente, en lugar de basar el código fuente en una característica. La propiedad que debe utilizar para ello es la siguiente:
generate.plugin@<id plug-in código fuente>=<id plug-in>
Ejemplo: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