Generazione di funzioni
La generazione PDE fornisce un'infrastruttura per automatizzare la generazione delle funzioni.
La maggior parte della configurazione necessaria per questo tipo
di generazione può essere eseguita attraverso poche modifiche alla
template build.properties fornita
nella generazione PDE. La sezione successiva tratta della configurazione di una semplice
generazione presupponendo che tutti i plug-in e le funzioni
a cui viene fatto riferimento dalla funzione generata sono
già disponibili sul disco.
Configurazione di base
Il primo passo nella configurazione di una generazione è la creazione della directory in
cui avrà luogo la
generazione. Questa directory verrà indicata come directory di generazione
e conterrà i
plug-in e le funzioni per generare nonché gli artefatti generati.
Successivamente, copiare i plug-in e
le funzioni rispettivamente nelle sottodirectory "plugins" e "features".
La cartella delle funzioni deve contenere la funzione da generare.
Il secondo passo è la copia del del file
build.properties modello da
org.eclipse.pde.build/templates/headless-build in una nuova directory che
genererà la
directory di configurazione. Modificare il file build.properties copiato e impostare le
seguenti proprietà:
- baseLocation: il percorso di un'installazione
eclipse che contiene tutte le funzioni e i plug-in pre-generati nelle sottodirectory
features/ e plugins/.
- baseos: indica l'os
di eclipse specificato da baseLocation.
- basews: indica il ws
di eclipse specificato da baseLocation.
- basearch: indica l'architettura di
eclipse specificata da baseLocation.
- buildDirectory:
la directory in cui avrà luogo la generazione. Impostare questa proprietà sul
percorso completo della directory di generazione creata precedentemente.
- configs: elenca le
configurazioni per cui si desidera generare la funzione. È possibile eliminare
un commento alle configurazioni fornite (attenzione alle continuazioni delle
righe). Se la funzione che si sta generando è indiependente dalla piattaforma,
questa proprietà non deve oppure non può essere impostata
su *,*,*.
- archivePrefix:
il nome della directory in cui la funzione verrà decompressa su disco.
Controllo di giò che verrà generato: allElements.xml
Copiare il file allElements.xml da
org.eclipse.pde.build/templates/headless-build nella directory
di configurazione. Questo è il file che indica a PDE quale funzione si
sta generando. Questo file contiene
due tipi di destinazioni: allElementsDelegator,
che specifica la funzione da generare, e le destinazioni
di assemblaggio che vengono richiamate per assemblare singole
configurazioni. Il
allElementsDelegator per una funzione denominata org.foo.Feature
è:
<target name="allElementsDelegator">
<ant antfile="${genericTargets}" target="${target}">
<property name="type" value="feature" />
<property name="id" value="org.foo.Feature" />
</ant>
</target>
Le destinazioni di assemblaggio consentono di controllare il nome dell'archivio
finale per ciascuna
configurazione. È necessario disporre di una destinazione per ciascuna configurazione che si
sta generando. Ad esempio,
quando si genera
org.foo.Feature
per Windows (quando configs è impostato su win32, win32, x86), è necessario disporre della seguente destinazione:
<!--Destinazione per l'assemblaggio os=win32, ws=win32, arch=x86 -->
<target name="assemble.org.foo.Feature.win32.win32.x86">
<ant antfile="${assembleScriptName}" dir="${buildDirectory}/">
</target>
Quando si genera una configurazione indipendente dalla piattaforma (quando configs non è impostato oppure è impostato su *,*,*), occorre disporre di una destinazione come la seguente:
<!--La destinazione di assemblaggio indipendente dalla piattaforma-->
<target name="assemble.org.foo.Feature">
<ant antfile="${assembleScriptName}" dir="${buildDirectory}"/>
</target>
Esecuzione della generazione
Per eseguire la generazione verrà utilizzata l'applicazione
org.elipse.ant.core.antRunner. Quando si richiama eclipse
con questa applicazione per eseguire una generazione occorre impostare due argomenti
sulla riga comandi:
-buildfile=</path/to/build.xml>
: questo è
il percorso del file build.xml fornito dalla generazione pde. Si trova nella directory
org.eclipse.pde.build/scripts. Questo è il file della generazione
che gestisce l'intero processo di generazione.
-Dbuilder=</percorso/cartella/configurazione>
:
questo è il percorso della cartella di configurazione di generazione.
Eseguire l'applicazione antRunner utilizzando il seguente comando:
java -jar
<installazioneeclipse>/startup.jar
-application org.eclipse.ant.core.antRunner -buildfile
<<installazioneeclipse>/plugins/org.eclipse.pde.build_<versione>/scripts/build.xml>
-Dbuilder=<percorso cartella di configurazione generazione>
Al termine della generazione, è possibile ottenere il risultato della directory di
generazione nella cartella denominata I.TestBuild (questo nome può essere configurato
impostando la proprietà buildLabel).
Scenari avanzati
Se si richiede ulteriore personalizzazione della generazione, ossia
richiamando informazioni da un repository, vedere Argomenti avanzati della
generazione PDE per
ulteriori informazioni.