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/<αρχεία που πρόκειται να συμπεριληφθούν στη δημιουργημένη λειτουργία πρωτογενούς κώδικα>
sourceTemplatePlugin/<αρχεία που πρόκειται να συμπεριληφθούν στη δημιουργημένη, πρόσθετη λειτουργία πρωτογενούς κώδικα>
sourceTemplateFragment/<αρχεία που πρόκειται να συμπεριληφθούν στα δημιουργημένα τμήματα κώδικα πλατφόρμας>
Όλα τα αρχεία που βρίσκονται στους φακέλους sourceTemplate θα συμπεριληφθούν στην
κατάλληλη λειτουργία/πρόσθετη λειτουργία/τμήμα κώδικα που θα δημιουργηθεί.
Συγκεκριμένα, τα αρχεία από τους καταλόγους αυτούς θα αντικαταστήσουν τα αρχεία που
έχουν δημιουργηθεί από τη δόμηση PDE. Με τον τρόπο αυτό, μπορεί να παρασχεθεί ένα
προσαρμοσμένο αρχείο feature.xml εάν υφίστανται απαιτήσεις για τη λειτουργία πρωτογενούς
κώδικα που δεν υποστηρίζονται από τη δόμηση PDE.
Μπορείτε να πραγματοποιήσετε την ένθεση των λειτουργιών πρωτογενούς κώδικα μέσω της
παροχής ενός αρχείου sourceTemplateFeature/build.properties για τη δημιουργημένη
λειτουργία πρωτογενούς κώδικα, η οποία περιέχει μια ιδιότητα generate.feature
για την ένθετη λειτουργία πρωτογενούς κώδικα.
Θα πρέπει επίσης να διασφαλίσετε ότι το αρχείο feature.xml στην κορυφή του
πρωτογενούς κώδικα περιλαμβάνει την ένθετη λειτουργία πρωτογενούς κώδικα. Αυτό μπορεί να
γίνει είτε μέσω της χρήσης του feature@ είτε παρέχοντας ένα αρχείο 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/...
Είναι επίσης δυνατό να δημιουργήσετε μια, μοναδική πρόσθετη λειτουργία πρωτογενούς κώδικα, βασισμένη σε μια, μοναδική πρόσθετη λειτουργία αντί να βασίσετε τον πρωτογενή κώδικα σε μια λειτουργία. Η ιδιότητα για αυτό είναι:
generate.plugin@<source plug-in id>=<plug-in id>
Παράδειγμα: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