Ανάκτηση από χώρους αποθήκευσης
Η υποδομή που συνοδεύει τη δόμηση PDE παρέχει τα βήματα για την ανάκτηση του προς
δόμηση πρωτογενούς κώδικα από ένα χώρο αποθήκευσης ως μέρος της διεργασίας δόμησης.
Διατίθενται δυο τρόποι ανάκτησης του πρωτογενούς κώδικα: α) αυτόματη ανάκτηση του
πρωτογενούς κώδικα από το PDE και β) μη αυτόματη ανάκτηση πρωτογενούς κώδικα.
Αυτόματη ανάκτηση πρωτογενούς κώδικα από το CVS
Δεδομένης της ταυτότητας μιας λειτουργίας που χρειάζεται να δομηθεί, η υποδομή της
δόμησης έχει την ικανότητα να ανακτήσει από το CVS όλες τις περιεχόμενες λειτουργίες
και πρόσθετες λειτουργίες.
Προκειμένου να γνωρίζει από πού θα λάβει αυτά που χρειάζεται, το PDE χρησιμοποιεί
αρχεία αντιστοίχισης.
Τα αρχεία αντιστοίχισης είναι αρχεία ιδιοτήτων java και αντιστοιχίζουν τις
ταυτότητες των λειτουργιών και των πρόσθετων λειτουργιών σε μια θέση και ένα
προσδιοριστικό σε ένα χώρο αποθήκευσης.
Η μορφή μιας καταχώρησης αρχείου αντιστοίχισης για ανάκτηση από το CVS είναι:
<elementType>@<elementID> = CVS, <TAG>, <CVSROOT>[,<PASSWORD>[,<PATH>[,<CVSPASSFILE>]]]
όπου το elementType είναι ένα από τα bundle,
feature,
plug-in ή fragment.
Εάν η διαδρομή δεν έχει οριστεί, τότε το όνομα στοιχείου θα χρησιμοποιηθεί σαν
λειτουργική μονάδα CVS. Για παράδειγμα:
το
plugin@org.foo.bar=CVS,v20060501,:pserver:anonymous@cvs.example.org:/cvsroot/foo
θα ανακτήσει την πρόσθετη λειτουργία org.foo.bar που έχει την ετικέτα με το
προσδιοριστικό v20060501 από το cvs.eclipse.org/cvsroot/foo/org.foo.bar
Ρυθμίσεις για την ανάκτηση πρωτογενούς κώδικα από το CVS
Για να ρυθμίσετε την ανάκτηση πρωτογενούς κώδικα από το CVS, θα πρέπει να ακολουθήσετε
τα εξής:
- Βεβαιωθείτε ότι έχετε ένα cvs.exe στη διαδρομή αναζήτησης συστήματος.
(Μεταφορτώστε το CVS από εδώ).
- Δημιουργήστε ένα φάκελο με το όνομα "maps" στον κατάλογο δόμησης.
- Δημιουργήστε ένα αρχείο με την επέκταση .map στο φάκελο "maps".
- Τοποθετήστε στο αρχείο map όλα τα στοιχεία που πρέπει να ανακτηθούν από ένα χώρο
αποθήκευσης.
- Τροποποιήστε το αρχείο build.properties από το φάκελο ρυθμίσεων και προσθέστε
σχόλιο στη γραμμή skipFetch=true. Εάν αυτή η ιδιότητα έχει οριστεί, η
δόμηση PDE θα παραλείψει ολόκληρη τη φάση ανάκτησης. Εάν επιθυμείτε να αγνοηθεί το
προσδιοριστικό που έχει οριστεί στα αρχεία αντιστοίχισης, μπορείτε να ορίσετε μια
συγκεκριμένη τιμή για την ιδιότητα fetchTag. Αυτό αποδεικνύεται χρήσιμο όταν
πραγματοποιείτε δόμηση από το HEAD αντί της δόμησης από τις εκδοχές που φέρουν
προσδιοριστικά.
Λήψη αρχείων αντιστοίχισης από το CVS
Τα αρχεία αντιστοίχισης συνήθως αποθηκεύονται σε ένα χώρο αποθήκευσης.
Η δόμηση PDE διαθέτει ως προεπιλογή την υποδομή για την ανάκτηση των αρχείων αυτών από
ένα χώρο αποθήκευσης CVS.
Για την ενεργοποίηση αυτής της συνάρτησης, πραγματοποιήστε αλλαγή των ακόλουθων ιδιοτήτων
στο αρχείο ρυθμίσεων build.properties από τον κατάλογο ρυθμίσεων:
- skipMaps: Προσθέστε σχόλια σε
αυτή την ιδιότητα.
Εάν η ιδιότητα έχει οριστεί, η δόμηση PDE δεν θα ανακτήσει τα αρχεία
αντιστοίχισης.
- mapsRepo =
:pserver:anonymous@example.com/path/to/repo. Ο χώρος αποθήκευσης CVS από τον οποίο
θα ανακτηθούν τα αρχεία.
- mapsRoot =
/path/to/maps. Η διαδρομή στο χώρο αποθήκευσης CVS στον κατάλογο που
περιέχει τα αρχεία αντιστοίχισης.
- mapsCheckoutTag =
HEAD. Το προσδιοριστικό CVS που χρησιμοποιείται για την ανάληψη ελέγχου των
αρχείων αντιστοίχισης.
Η ανάκτηση των αρχείων αντιστοίχισης από το CVS λαμβάνει χώρα κατά τη φάση της
προ-δόμησης.
Τα σενάρια ανάκτησης όλων των λειτουργιών και των πρόσθετων λειτουργιών, οι
οποίες περιέχονται στη λειτουργία που δομείται, θα δημιουργηθούν και θα εκτελεστούν κατά
τη φάση ανάκτησης της δόμησης.
Αυτόματη ανάκτηση από άλλους χώρους αποθήκευσης
Η δόμηση PDE παρέχει ένα σημείο επέκτασης όπου μπορούν να προσαρτηθούν οι
λειτουργίες δημιουργίας σεναρίων ανάκτησης για διαφορετικούς χώρους αποθήκευσης.
Όταν η εγκατάσταση eclipse περιέχει δέσμη, η οποία παρέχει μια επέκταση
λειτουργίας
δημιουργίας σεναρίου για ένα χώρο αποθήκευσης διαφορετικού είδους, μπορείτε να
χρησιμοποιήσετε αυτό το χώρο αποθήκευσης προσδιορίζοντάς τον στις καταχωρήσεις του
αρχείου αντιστοίχισης.
<elementType>@<elementID> = <REPOSITORY>, <TAG>, [...]
Η μορφή που θα έχει η καταχώρηση αντιστοίχισης μετά το TAG θα εξαρτηθεί από την
επέκταση.
Εάν η ανάκτηση των αρχείων αντιστοίχισης από το χώρο αποθήκευσης γίνεται αυτόματα,
θα χρειαστεί να αντιγράψετε το αρχείο customTarget.xml από το
org.eclipse.pde.build/templates/headless-build στον κατάλογο ρυθμίσεων.
Ο προορισμός getMapFiles χρησιμοποιείται για την ανάκτηση των αρχείων
αντιστοίχισης και θα πρέπει να τροποποιηθεί για την ανάκτηση των αρχείων από το χώρο
αποθήκευσης.
Μη αυτόματη λήψη πρωτογενούς κώδικα
Μπορείτε να εγγράψετε προσαρμοσμένους προορισμούς ανάκτησης για την ανάκτηση των
λειτουργιών και των πρόσθετων λειτουργιών που μπορούν να κληθούν από τους
προορισμούς preSetup ή postSetup στο αρχείο customTargets.xml.
Οι λειτουργίες και οι πρόσθετες λειτουργίες θα πρέπει να ανακτηθούν στους
καταλόγους ${buildDirectory}/features
και
${buildDirectory}/plugins αντίστοιχα.