Hent fra opbevaringssteder
Infrastrukturen i PDE Build stiller fremgangsmåder til rådighed til at hente kildekoden til bygning fra et opbevaringssted som en del af byggeprocessen.
Der er to muligheder: at lade PDE Build hente kilden automatisk eller at hente kildekoden manuelt.
Hent kildekode automatisk fra CVS
Hvis id'en på en funktion, der skal bygges, er angivet, kan byggeinfrastrukturen hente alle de inkluderede funktioner og plugins fra CVS.
PDE benytter mappingfiler til at bestemme, hvor elementerne skal hentes fra. En mappingfil er en Java-egenskabsfil, der mapper funktions- og plugin-id'er til en placering og en kode på et opbevaringssted. En indgang i en mappingfil til hentning fra CVS har følgende format:
<elementType>@<elementID> = CVS, <TAG>, <CVSROOT>[,<PASSWORD>[,<PATH>[,<CVSPASSFILE>]]]
hvor elementType skal være bundle, feature,
plug-in eller fragment.
Hvis stien ikke er angivet, benyttes elementnavnet som CVS-modul i stedet for. F.eks. vil:
plugin@org.foo.bar=CVS,v20060501,:pserver:anonymous@cvs.example.org:/cvsroot/foo
hente plugin'en org.foo.bar, som er mærket med koden v20060501, fra cvs.eclipse.org/cvsroot/foo/org.foo.bar
Konfigurér hentning af CVS-kilde
Hvis du vil konfigurere hentning af kilden fra CVS, skal du benytte denne fremgangsmåde:
- Sørg for, at en cvs.exe-fil findes i systemets søgesti
(du kan hente CVS her).
- Opret en folder med navnet maps i byggebiblioteket.
- Opret en fil med filtypen .map i folderen maps.
- Udfyld mappingfilen med alle de elementer, der skal hentes fra et opbevaringssted.
- Redigér filen build.properties fra konfigurationsfolderen, og udkommentér linjen skipFetch=true. Hvis denne egenskab er angivet, vil PDE Build springe hele hentningsfasen over. Hvis den kode, der er angivet i mappingfilerne, skal ignoreres, kan du indstille egenskaben fetchTag til en bestemt værdi. Dette er nyttigt, når du bygger i baggrunden fra HEAD i stedet for fra de kodede versioner.
Hent mappingfilerne fra CVS
Mappingfiler gemmes normalt på et opbevaringssted. PDE Build indeholder en standardinfrastruktur til hentning af disse mappingfiler fra et CVS-opbevaringssted.
Hvis du vil aktivere denne funktion, skal du redigere følgende egenskaber i konfigurationens build.properties-fil fra konfigurationsbiblioteket:
- skipMaps: Udkommentér denne egenskab. Hvis egenskaben er angivet, henter PDE Build ikke mappingfilerne.
- mapsRepo =
:pserver:anonymous@example.com/path/to/repo. Det CVS-opbevaringssted, som mappingfilerne skal hentes fra.
- mapsRoot =
/path/to/maps. Stien på CVS-opbevaringsstedet til mappingfilerne.
- mapsCheckoutTag =
HEAD. Den CVS-kode, der benyttes til at tjekke mappingfilerne ud.
Hentning af mappingfiler fra CVS sker under prebygningsfasen under en bygning. Kommandofiler til hentning af alle funktioner og plugins, der skal inkluderes i funktionen, du bygger, bliver genereret og udført under bygningens hentningsfase.
Hent automatisk fra andre opbevaringssteder
PDE Build har et udvidelsespunkt, hvor generatorer til hentningskommandofiler for andre opbevaringssteder kan tilføjes. Hvis eclipse-installationen indeholder et bundt, der stiller en kommandofilgeneratorudvidelse til rådighed for en anden type opbevaringssted, kan du benytte dette opbevaringssted ved at angive det i indgangene i mappingfilen:
<elementType>@<elementID> = <REPOSITORY>, <TAG>, [...]
Mappingindgangens format efter TAG afhænger af udvidelsen.
Hvis du henter mappingfilerne automatisk fra opbevaringsstedet, skal du kopiere filen customTarget.xml manuelt fra org.eclipse.pde.build/templates/headless-build til konfigurationsbiblioteket. Målet getMapFiles benyttes til at hente mappingfilerne, så det skal redigeres til hentning fra dit opbevaringssted.
Hent kildekode manuelt
Du kan skrive tilpassede hentningsmål for at hente plugins og funktioner, som kan startes fra preSetup- eller postSetup-målene i filen customTargets.xml.
Funktioner og plugins skal hentes til henholdsvis
${buildDirectory}/features
og
${buildDirectory}/plugins.