Συσκευασία συστατικών στοιχείων του Eclipse

Τα συστατικά στοιχεία του Eclipse διανέμονται ως αρχεία αποθήκευσης. Κάθε αρχείο αποθήκευσης περιέχει μια συλλογή λειτουργιών και πρόσθετων λειτουργιών. Συνήθως, τα αρχεία αποθήκευσης περιέχουν όλες τις λειτουργίες που έχει να προσφέρει ένα συγκεκριμένο συστατικό στοιχείο. Συχνά παρατηρείται ότι οι καταναλωτές χρειάζονται περισσότερα από ένα συστατικά στοιχεία ή/και μόνο τμήματα κάποιων συστατικών στοιχείων. Εάν δεν υπάρχει βοήθεια, οι καταναλωτές πρέπει να εκτελούν μη αυτόματη ανάκτηση των αρχείων αποθήκευσης που περιέχουν το υπερσύνολο των λειτουργιών που χρειάζονται και στη συνέχεια να εξάγουν οι ίδιοι τις απαιτούμενες λειτουργίες και πρόσθετες λειτουργίες. Αυτή η διαδικασία μπορεί να είναι δύσκολη και επιρρεπής σε σφάλματα.

Ευτυχώς, το PDE περιέχει έναν μηχανισμό που μπορεί να βοηθήσει, τη λειτουργία δημιουργίας πακέτων. Εν συντομία, η λειτουργία δημιουργίας πακέτων λαμβάνει ως δεδομένα εισόδου μια λίστα αρχείων αποθήκευσης που περιέχουν λειτουργίες καθώς και μια λίστα από ενδιαφέρουσες λειτουργίες. Στη συνέχεια εκτελεί ανάκτηση των αρχείων zip, εξάγει τις λειτουργίες (και τις πρόσθετες λειτουργίες τους) και τις συσκευάζει εκ νέου σε αρχείο zip δεδομένων εξόδου.

Ταχεία έναρξη

Ακολουθεί ένα σύνολο βασικών βημάτων έναρξης της λειτουργίας δημιουργίας πακέτων.  Συνίσταται η δημιουργία πακέτων *nix σε υπολογιστή *nix ώστε να διασφαλίζεται η διατήρηση των δικαιωμάτων πρόσβασης στα αρχεία.

  1. Δημιουργήστε έναν κατάλογο ρυθμίσεων συσκευασίας και αντιγράψτε εκεί τα αρχεία προτύπου (packager.properties, packaging.properties, και customTargets.xml) από το org.eclipse.pde.build/templates/packager.
  2. Τροποποιήστε τα αντιγραμμένα αρχεία packager.properties και ορίστε τις ακόλουθες ιδιότητες:
  3. Ανάκτηση αρχείων αντιστοίχισης λειτουργίας δημιουργίας πακέτων.  Οι ιδιότητες που ακολουθούν ελέγχουν τη μεταφόρτωση των αρχείων αντιστοίχισης:
    Το σενάριο της λειτουργίας δημιουργίας πακέτων θα συνενώσει όλα τα αρχεία *.map που εντοπίστηκαν στο ${downloadDirectory}. Για τη μεταφόρτωση περισσότερων από ένα αρχείων αντιστοίχισης ή για την ανάκτησή τους απο τα CVS, τροποποιήστε το αρχείο customTargets.xml και αλλάξτε τον προορισμό getMapFiles.
  4. Εκτελέστε τη λειτουργία δημιουργίας πακέτων χρησιμοποιώντας την ακόλουθη εντολή:
  5. java -jar <eclipse install>/startup.jar -application org.eclipse.ant.core.antRunner 
    -buildfile <<eclipse install>/plugins/org.eclipse.pde.build_<version>/scripts/package.xml>
    -DpackagingInfo=<path to your packaging configuration directory>

Μορφή αρχείου αντιστοίχισης λειτουργίας δημιουργίας πακέτων

Τα αρχεία αντιστοίχισης της λειτουργίας δημιουργίας πακέτων χρησιμοποιούνται για την περιγραφή των διάφορων αρχείων αποθήκευσης, των περιεχομένων τους και της περιοχής από όπου μπορούν να μεταφορτωθούν.  Είναι παρόμοια με τα αρχεία αντιστοίχισης που χρησιμοποιούνται στη διαδικασία δόμησης για την ανάκτηση δεσμών από τους χώρους αποθήκευσης.  Η μορφή μιας καταχώρησης αρχείου αντιστοίχισης λειτουργίας δημιουργίας πακέτων έχει ως εξής:
archiveName = url | [configList] | [directory] | contentDescription | componentName

Σημειώστε ότι τα πεδία configList και directory είναι προαιρετικά, είναι σημαντικό να χρησιμοποιούνται ακόμη τα κατάλληλα διαχωριστικά αριθμών "|".
Παραδείγματα:
eclipse-SDK-3.1-win32.zip=http://download.eclipse.org/downloads/drops/R-3.1-200506271435/ | win32,win32,x86 | | sdk | eclipse
eclipse-PDE-3.1.zip=http://download.eclipse.org/downloads/drops/R-3.1-200506271435/ | | | runtime | pde

Ιδιότητες ρυθμίσεων της λειτουργίας δημιουργίας πακέτων

Οι παρακάτω ιδιότητες μπορούν να οριστούν στο αρχείο ρυθμίσεων της λειτουργίας δημιουργίας πακέτων packager.properties:
baseDirectory
Ο κατάλογος όπου θα πραγματοποιηθούν όλες οι συσκευασίες
workingDirectory
Ο κατάλογος όπου θα δημιουργηθούν όλα τα σενάρια.  Η τιμή στο πρότυπο είναι ${baseDirectory}/workingPlace
downloadDirectory
Ο φάκελος στον οποίο θα μεταφορτωθούν τα αρχεία αποθήκευσης.  Η τιμή στο πρότυπο είναι ${baseDirectory}/toPackage
tempDirectory
Ο φάκελος στον οποίο θα εξαχθούν τα αρχεία αποθήκευσης.  Η τιμή στο πρότυπο είναι ${baseDirectory}/temp
featurePaths
Το όνομα της αφετηρίας των αρχείων αποθήκευσης που έχουν μεταφορτωθεί.  Η τιμή στο πρότυπο είναι eclipse.
featureList
Μια διαχωρισμένη με κόμματα λίστα των ταυτοτήτων λειτουργιών στις οποίες θέλετε να επαναλάβετε τη συσκευασία.
componentFilter
Μία διαχωρισμένη με κόμματα λίστα των συστατικών στοιχείων όπου μπορούν να εντοπιστούν οι λειτουργίες σας στο πεδίο featureList.  Φιλτράρει τα διαθέσιμα αρχεία αποθήκευσης και παρέχει στη λειτουργία δημιουργίας πακέτων τη δυνατότητα βελτιστοποίησης του συνόλου των αρχείων που μεταφορτώθηκαν.
contentFilter
Μια διαχωρισμένη με κόμματα λίστα των ειδών περιεχομένου που πρέπει να ανακτηθούν.  Φιλτράρει το σύνολο των διαθέσιμων αρχείων αποθήκευσης και παρέχει στη λειτουργία δημιουργίας πακέτων τη δυνατότητα βελτιστοποίησης του συνόλου των αρχείων που μεταφορτώθηκαν.
config
Μία λίστα ρυθμίσεων διαχωρισμένων με "&" (μια διαχωρισμένη με κόμματα τριάδα λειτουργικού συστήματος, συστήματος παραθύρων, αρχιτεκτονικής) όπου πρέπει να επαναληφθεί η συσκευασία.   (π.χ.: win32, win32, x86 & linux, gtk, x86)
archivesFormat
Οι μορφές των αρχείων αποθήκευσης.  Μία λίστα μορφών ρυθμίσεων διαχωρισμένη με "&".  (π.χ.: win32, win32, x86 - antZip & linux, gtk, ppc - tar).  Εάν δεν έχει οριστεί η μορφή για μια δεδομένη ρύθμιση, η προεπιλεγμένη μορφή είναι antZip.
zipargs
Επιπρόσθετα ορίσματα που θα μεταβιβαστούν σε zip
unzipargs
Επιπρόσθετα ορίσματα που θα μεταβιβαστούν σε unzip
archivePrefix
Tο πρόθημα των αρχείων αποθήκευσης που προκύπτουν
collectingFolder
Το όνομα του κεντρικού φακέλου του αρχείου αποθήκευσης που προκύπτει.
buildId
Ελέγχει την ταυτότητα δόμησης στο προεπιλεγμένο όνομα του αρχείου αποθήκευσης.
buildType
Το είδος της δόμησης που χρησιμοποιείται για την ονομασία των δεδομένων εξόδου δόμησης.  Συνήθως ένα από τα I, N, M, S, ...
buildLabel
Ετικέτα για τη δόμηση.  Η τιμή προτύπου είναι ${buildType}.${buildId}
archiveNamePrefix
Ελέγχει το όνομα του αρχείου αποθήκευσης που προκύπτει.  Η προεπιλεγμένη τιμή είναι ${buildId}
packagingProperties
Μια σχετική διαδρομή στο αρχείο που περιέχει τα κεντρικά αρχεία συσκευασίας ιδιοτήτων.  Από προεπιλογή, αυτό παραπέμπει στο packaging.properties.
deltaPack
Καθορίζει εάν θα δημιουργηθεί ή όχι ένα delta pack.  Θα εξαιρέσει τα τμήματα που είναι ανεξάρτητα από την πλατφόρμα και θα ομαδοποιήσει όλες τις ρυθμίσεις σε ένα αρχείο αποθήκευσης.

Συσκευασία κεντρικών αρχείων

Στο αρχείο ρυθμίσεων της λειτουργίας δημιουργίας πακέτων packager.properties, η ιδιότητα packagingProperties παραπέμπει σε ένα αρχείο ιδιοτήτων που καθορίζει τα κεντρικά αρχεία, τα οποία πρέπει να συσκευαστούν.  Από προεπιλογή, αυτό είναι το αρχείο packaging.properties.

Αυτό το αρχείο ιδιοτήτων πρέπει να περιέχει τις ιδιότητες που καθορίζουν τα απαιτούμενα κεντρικά αρχεία.  Ανατρέξτε στη σελίδα Ιδιότητες λειτουργιών για λεπτομέρειες σχετικά με τις κεντρικές ιδιότητες.