Hente fra datalagre
Infrastrukturen
i PDE Build har trinn for å hente kildekoden som skal bygges, fra et datalager som
en del av byggeprosessen.
Det finnes
to muligheter: La PDE Build hente kilden automatisk, eller hent kildekoden manuelt.
Automatisk henting av kildekode fra CVS
Hvis IDen
for en funksjon som må bygges, er oppgitt, kan byggeinfrastrukturen hente alle de inkluderte funksjonene og
plugin-modulene fra CVS.
PDE bruker
tilordningsfiler for å vite hvor ting skal hentes fra. En tilordningsfil
er en java-egenskapsfil som tilordner funksjons- og plugin-IDer til en plassering og
en kode i et datalager. Dette er
formatet for en oppføring i en tilordningsfil for henting fra CVS:
<elementType>@<elementID> = CVS, <TAG>, <CVSROOT>[,<PASSWORD>[,<PATH>[,<CVSPASSFILE>]]]
der elementType
er en av bundle, feature,
plug-in eller fragment. Hvis
banen ikke er oppgitt, brukes elementnavnet som CVS-modul i stedet. Det følgende
plugin@org.foo.bar=CVS,v20060501,:pserver:anonymous@cvs.example.org:/cvsroot/foo
henter plugin-modulen
org.foo.bar som er merket med koden v20060501
fra cvs.eclipse.org/cvsroot/foo/org.foo.bar
Konfigurere for henting av CVS-kilde
Slik konfigurerer
du for å hente kilden fra CVS:
- Kontroller at
du har en cvs.exe i systemets søkebane. (Last ned CVS
herfra).
- Opprett en
mappe kalt maps i byggekatalogen.
- Opprett en
fil med filtypen .map i katalogen maps.
- Fyll
ut denne tilordningsfilen med alle elementene som må hentes fra et datalager.
- Rediger
build.properties-filen fra konfigurasjonsmappen, og kommenter ut linjen skipFetch=true. Hvis denne
egenskapen er definert, vil PDE Build hoppe over hele hentefasen. Hvis du
ønsker at koden som er oppgitt i tilordningsfilene, skal ignoreres, kan du definere egenskapen
fetchTag til en bestemt verdi. Dette er nyttig
når det utføres en nattlig bygging fra HEAD, i stedet for fra de kodede versjonene.
Hente tilordningsfilene fra CVS
Tilordningsfiler
er vanligvis lagret i et datalager. PDE Build
tilbyr standard infrastruktur for å hente disse tilordningsfilene fra et CVS-datalager.
Du aktiverer denne
funksjonen ved å endre de følgende egenskapene i konfigurasjonens build.properties-fil fra
konfigurasjonskatalogen:
- skipMaps: Kommenter
ut denne egenskapen. Hvis
egenskapen er definert, vil PDE ikke hente tilordningsfilene.
- mapsRepo =
:pserver:anonymous@example.com/path/to/repo. CVS-datalageret
der du vil hente tilordningsfilene.
- mapsRoot =
/path/to/maps. Banen i
CVS-datalageret til katalogen som inneholder tilordningsfilene.
- mapsCheckoutTag =
HEAD. CVS-koden som
skal brukes til å hente ut tilordningsfilene.
Henting av
tilordningsfilene fra CVS forekommer i Pre-Build-fasen av byggingen. Skript for å
hente alle funksjonene og plugin-modulene som er inkludert i funksjonen du bygger, blir generert og
kjørt i hentefasen av byggingen.
Automatisk henting fra andre datalagre
PDE Build
har et utvidelsespunkt der henteskriptgeneratorer for ulike datalagre kan
plugges inn. Når Eclipse-installeringen
inneholder en bunt med en skriptgeneratorutvidelse for en annen type datalager, kan du bruke dette
datalageret ved å oppgi det i oppføringene i tilordningsfilen:
<elementType>@<elementID> = <REPOSITORY>, <TAG>, [...]
Formatet
for en tilordningsoppføring etter TAG avhenger av utvidelsen.
Hvis du
henter tilordningsfilene fra datalageret automatisk, må du kopiere customTarget.xml-filen fra
org.eclipse.pde.build/templates/headless-build til konfigurasjonskatalogen. Målet getMapFiles
brukes til å hente tilordningsfilene. Dette kan endres for å hente fra datalageret.
Hente kildekode manuelt
Du kan
skrive tilpassede hentemål for å hente plugin-modulene og funksjonene som kan aktiveres fra
preSetup- eller postSetup-målene i customTargets.xml-filen.
Funksjoner og plugin-moduler
bør hentes til henholdsvis ${buildDirectory}/features og ${buildDirectory}/plugins.