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@<source feature id> = <feature id> [, feature@<feature id>] [, plugin@<plugin id>[;unpack="false"]]
features/
org.foo.rcp/
sourceTemplateFeature/<Dateien, die in das generierte Quellenfeature aufgenommen werden sollen>
sourceTemplatePlugin/<Dateien, die in das generierte Quellen-Plug-in aufgenommen werden sollen>
sourceTemplateFragment/<Dateien, die in die generierten plattformspezifischen Quellenfragmente aufgenommen werden sollen>
Alle Dateien, die sich in diesem Ordner mit der Bezeichnung 'sourceTemplate' befinden, werden in das entsprechende generierte Feature, Plug-in oder Fragment aufgenommen.
Die Dateien aus diesen Verzeichnissen ersetzen also Dateien, die von der PDE-Erstellung generiert wurden. Auf diese Art kann eine angepasste Datei 'feature.xml' bereitgestellt werden, wenn für das Quellenfeature Anforderungen existieren, die von der PDE-Erstellung nicht unterstützt werden.
Sie können Quellenfeatures verschachteln, indem Sie die Datei 'sourceTemplateFeature/build.properties' für ein generiertes Quellenfeature bereitstellen, in der die Eigenschaft 'generate.feature' für das verschachtelte Quellenfeature enthalten ist. Sie müssen auch sicherstellen, dass die oberste Quelle 'feature.xml' das verschachtelte Quellenfeature enthält. Verwenden Sie hierzu 'feature@' oder stellen Sie eine Schablone mit der Bezeichnung 'feature.xml' zur Verfügung:
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/...
Es ist auch möglich, ein einziges Quellen-Plug-in auf der Grundlage eines einzelnen Plug-ins zu generieren, anstatt die Quelle auf der Grundlage eines Features zu generieren. Hierfür benötigen Sie die folgende Eigenschaft:
generate.plugin@<source plug-in id>=<plug-in id>
Beispiel: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