Extraction depuis des référentiels
L'infrastructure fournie par la compilation PDE permet d'extraire par étapes le code source à générer depuis un référentiel dans le cadre du processus de génération.
Il existe deux possibilités : laisser la compilation PDE extraire automatiquement le code source, ou extraire le code source manuellement.
Extraction automatique du code source depuis CVS
Selon l'identificateur du dispositif à générer, l'infrastructure de génération peut extraire tous les dispositifs et plug-ins inclus depuis CVS.
Pour connaître l'emplacement des éléments à extraire, la compilation PDE utilise des fichiers de mappe. Un fichier de mappe est un fichier de propriétés Java qui associe les ID de dispositif et de plug-in à un emplacement et une balise dans un référentiel. Une entrée de fichier de mappe d'extraction depuis CVS a le format suivant :
<elementType>@<elementID> = CVS, <TAG>, <CVSROOT>[,<PASSWORD>[,<PATH>[,<CVSPASSFILE>]]]
où elementType est l'un des bundles, dispositifs,
plug-ins ou fragments.
Si le chemin n'est pas défini, le nom d'élément est utilisé comme module CVS. Par exemple :
plugin@org.foo.bar=CVS,v20060501,:pserver:anonymous@cvs.example.org:/cvsroot/foo
extrait le plug-in org.foo.bar libellé avec
v20060501 depuis cvs.eclipse.org/cvsroot/foo/org.foo.bar
Définition de l'extraction du code source de CVS
Pour configurer l'extraction du code source depuis CVS, procédez comme suit :
- Vérifiez qu'un fichier cvs.exe figure dans le chemin de recherche système.
(Téléchargez CVS depuis ici).
- Créez le dossier maps dans le répertoire de génération.
- Créez un fichier avec l'extension .map dans le dossier maps.
- Complétez ce fichier de mappe avec tous les éléments à extraire du référentiel.
- Modifiez le fichier build.properties du dossier de configuration et
mettez en commentaire la ligne skipFetch=true. Si vous définissez cette propriété, la compilation PDE ignore l'ensemble de la phase d'extraction. Si vous voulez ignorer la balise définie dans les fichiers de mappe, affectez une valeur spécifique à la propriété fetchTag. Ceci est utile lorsque vous exécutez une génération la nuit depuis HEAD et non pas des version balisées.
Obtention des fichiers de mappe depuis CVS
Les fichiers de mappe se trouvent généralement dans un référentiel. La compilation PDE fournit une infrastructure par défaut pour obtenir les fichiers de mappe depuis un référentiel CVS.
Pour activer cette fonction, changez les propriétés suivantes dans le fichier build.properties du répertoire de configuration :
- skipMaps: mettez en commentaire cette propriété. Si vous définissez la propriété, l'environnement PDE ne peut pas extraire les fichiers de mappe.
- mapsRepo = :pserver:anonymous@example.com/path/to/repo. référentiel CVS d'extraction des fichiers de mappe.
- mapsRoot =
/path/to/maps chemin dans le référentiel CVS qui permet d'accéder au répertoire contenant les fichiers de mappe.
- mapsCheckoutTag =
HEAD Balise CVS à utiliser pour extraire les fichiers de mappe.
L'extraction des fichiers de mappe depuis CVS a lieu au cours de la prégénération. Les scripts pour extraire tous les dispositifs et plug-ins inclus dans le dispositif que vous élaborez sont générés et exécutés lors de la phase d'extraction de la génération.
Extraction automatique depuis d'autres référentiels
La compilation PDE fournit un point d'extension dans lequel les générateurs de scripts d'extraction de différents référentiels peuvent être connectés. Lorsque l'installation Eclipse contient un bundle qui fournit une extension de générateur de script pour un type de référentiel différent, vous pouvez utiliser ce référentiel en le définissant dans les entrées de fichier de mappe :
<elementType>@<elementID> = <REPOSITORY>, <TAG>, [...]
Le format d'une entré de mappe après la BALISE dépend de l'extension.
Si vous extrayez automatiquement les fichiers de mappe depuis le référentiel, vous devez copier le fichier customTarget.xml depuis
org.eclipse.pde.build/templates/headless-build vers le répertoire de configuration. La cible getMapFiles est utilisée pour extraire les fichiers de mappe ; ceci doit être modifié pour effectuer l'extraction depuis le référentiel.
Obtention du code source manuellement
Vous pouvez écrire des cibles d'extraction personnalisées pour extraire les plug-ins et les dispositifs qui peuvent être appelés depuis les cibles preSetup ou postSetup dans le fichier customTargets.xml. Les dispositifs et les plug-ins doivent être recherchés dans
${buildDirectory}/features et ${buildDirectory}/plugins.