Recupero dai repository
L'infrastruttura fornita dalla generazione PDE consente di recuperare il codice di origine da un
repository, come parte del processo di generazione.
Sono disponibili due possibilità: lasciare che la generazione PDE recuperi automaticamente il codice
o recuperarlo manualmente.
Recupero del automatico del codice di origine da CSV
Una volta fornito l'identificativo di una funzione da generare, l'infrastruttura di generazione
è in grado di recuperare da CVS tutte le funzioni e i plugin inclusi.
Per conoscere i percorsi da cui recuperare i dati, PDE utilizza dei file di associazione. Un file di
associazione è un file di proprietà java che associa id funzione e plugin a un percorso e a una
tag in un repository. Il formato di una voce del file di associazione per il recupero da CVS è:
<elementType>@<elementID> = CVS, <TAG>, <CVSROOT>[,<PASSWORD>[,<PATH>[,<CVSPASSFILE>]]]
dove elementType è bundle, feature,
plug-in o fragment.
Se il percorso non è specificato, il nome elemento verrà utilizzato come modulo CVS, ad esempio:
plugin@org.foo.bar=CVS,v20060501,:pserver:anonymous@cvs.example.org:/cvsroot/foo
recupererà il plugin org.foo.bar etichettato con la tag
v20060501 da cvs.eclipse.org/cvsroot/foo/org.foo.bar
Configurazione per il recupero dell'origine CVS
Per configurare il recupero dell'origine da CVS, si consiglia di effettuare quanto segue:
- Accertarsi di disporre di un cvs.exe nel proprio percorso di ricerca del sistema.
(Scaricare CVS da qui).
- Creare una cartella denominata maps nella directory di generazione.
- Creare un file con estensione .map nella cartella maps.
- Compilare questo file di associazione con tutti gli elementi che è necessario recuperare da un
repository.
- Modificare il file build.properties dalla cartella di configurazione o eliminare i commenti
dalla riga skipFetch=true. Se tale proprietà è impostata, la generazione PDE ignora
la fase di recupero. Se si desidera ignorare la tag specificata nei file di associazione, è
possibile impostare la proprietà fetchTag su un valore specifico. Ciò è utile quando si
effettua una generazione notturna da HEAD anziché dalle versioni con tag.
Acquisizione dei file di associazione da CVS
I file di associazione generalmente sono memorizzati in un repository. La generazione PDE fornisce
un'infrastruttura predefinita per acquisire tali file di associazione da un repository CVS.
Per abilitare questa funzione, modificare le seguenti proprietà nel file
build.properties di configurazione dalla directory di configurazione:
- skipMaps: eliminare il commento da questa
proprietà. Se tale proprietà è impostata, la generazione PDE non recupera i file di associazione.
- mapsRepo =
:pserver:anonymous@example.com/path/to/repo. Il repository CVS da cui recuperare i file di
associazione.
- mapsRoot =
/path/to/maps. Il percorso nel repository CVS alla directory contenente i file di associazione.
- mapsCheckoutTag =
HEAD. La tag CVS da utilizzare per eseguire il checkout dei file di associazione.
Il recupero dei file di associazione da CVS si verifica durante la fase di pre-generazione. Gli script
per recuperare tutte le funzioni e i plugin inclusi nella funzione che si sta creando verranno
generati ed eseguiti durante la fase di recupero della generazione.
Recupero automatico da altri repository
La generazione PDE fornisce un punto di estensione in cui i generatori dello script di recupero
per differenti repository possono essere collegati. Quando l'installazione Eclipse contiene
un insieme che fornisce un'estensione del generatore di script per un tipo di repository, è possibile
utilizzare tale repository specificandolo nelle voci del file di associazione:
<elementType>@<elementID> = <REPOSITORY>, <TAG>, [...]
Il formato della voce di associazione dopo la
TAG dipenderà dall'estensione.
Se si stanno recuperando automaticamente i file di associazione dal
repository, sarà necessario copiare il file customTarget.xml da
org.eclipse.pde.build/templates/headless-build nella propria
directory di configurazione. Il getMapFiles di destinazione viene utilizzato per recuperare
i file di associazione; si consiglia di modificarlo per eseguire il recupero dal proprio repository.
Recupero manuale del codice di origine
È possibile scrivere delle destinazioni di recupero personalizzate per richiamare i plugin e le
funzioni che è possibile richiamare dalle destinazioni preSetup o postSetup nel file
customTargets.xml.
Si consiglia di recuperare le funzioni e i plugin rispettivamente in ${buildDirectory}/features
e ${buildDirectory}/plugins.