This shows you the differences between two versions of the page.
|
java:jar_files [2015/02/24 13:25] gthanos [Δημιουργία JAR files] |
java:jar_files [2022/02/24 14:05] |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Αρχεία Java Archive (JAR) ====== | ||
| - | Τα αρχεία JAR μας δίνουν την δυνατότητα να ομαδοποιήσουμε πολλαπλά αρχεία **.class** σε ένα αρχείο (archive). Ένα αρχείο JAR περιέχει σε συμπιεσμένη μορφή τα εξής: | ||
| - | - **.class** files | ||
| - | - Συμπληρωματικά αρχεία που συνδέονται με Java applets και applications. | ||
| - | - Το αρχείο MANIFEST.MF για το οποίο θα μιλήσουμε στη συνέχεια. | ||
| - | |||
| - | Το βασικό πλεονέκτημα των αρχείων JAR είναι ότι αντικαθιστούν πολύπλοκες ιεραρχίες πακέτων και κλάσεων με ένα μόνο αρχείο. Επίσης, | ||
| - | |||
| - | ===== Δημιουργία JAR files ===== | ||
| - | |||
| - | Η βασική εντολή για την δημιουργία ενός jar file είναι η παρακάτω: | ||
| - | |||
| - | < | ||
| - | jar cf jar-file input-file(s) | ||
| - | </ | ||
| - | |||
| - | Επανερχόμενοι στο παράδειγμα του [[: | ||
| - | |||
| - | < | ||
| - | cd homework1/ | ||
| - | jar cvf homework1.jar ./*.class | ||
| - | mv homework1.jar ../ | ||
| - | </ | ||
| - | |||
| - | Εναλλακτικά, | ||
| - | |||
| - | < | ||
| - | cd homework1 | ||
| - | jar cvf homework1.jar -C src/ ./*.class | ||
| - | </ | ||
| - | |||
| - | Η παραπάνω εντολή εκτελεί την εντολή jar μέσα στο directory '' | ||
| - | ^ Option ^ Περιγραφή ^ | ||
| - | | v | **Verbose: | ||
| - | | c | **Create: | ||
| - | | 0 | no compression added to the jar file | | ||
| - | | M | το Manifest αρχείο που προστίθεται δεν θα προστεθεί | | ||
| - | | m | Χρησιμοποιείται για να προστεθεί ειδική πληροφορία στο Manifest αρχείο, | ||
| - | | C | αλλαγή του τρέχοντος καταλόγου πριν την εκτέλεση της εντολής jar | | ||
| - | |||
| - | ===== Βλέποντας τα περιεχόμενα ενος JAR file ===== | ||
| - | |||
| - | Για να δείτε τα περιεχόμενα ενός JAR file αρκεί να χρησιμοποιήσετε την εντολή | ||
| - | |||
| - | < | ||
| - | jar tf jar-file | ||
| - | </ | ||
| - | |||
| - | Για να δείτε τα περιεχόμενα του homework1.jar αρκεί να γράψετε | ||
| - | |||
| - | < | ||
| - | jar tf homework1.jar | ||
| - | </ | ||
| - | |||
| - | ===== Εξαγωγή των περιεχομένων αρχείων ενός JAR file ===== | ||
| - | |||
| - | Για να εξάγετε τα περιεχόμενα ενός JAR file αρκεί να χρησιμοποιήσετε την εντολή | ||
| - | |||
| - | < | ||
| - | jar xf jar-file | ||
| - | </ | ||
| - | |||
| - | Για να εξάγετε τα περιεχόμενα του homework1.jar αρκεί να γράψετε | ||
| - | |||
| - | < | ||
| - | jar xf homework1.jar | ||
| - | </ | ||
| - | |||
| - | ===== Εκτελώντας λογισμικό σε αρχεία JAR ===== | ||
| - | |||
| - | Μπορείτε να εκτελέσετε ένα πρόγραμμα που βρίσκεται σε ένα αρχείο JAR χρησιμοποιώντας την παρακάτω εντολή | ||
| - | |||
| - | < | ||
| - | java -jar jar-file | ||
| - | </ | ||
| - | |||
| - | To flag '' | ||
| - | |||
| - | <code java> | ||
| - | public static void main(String args[]) { .... } | ||
| - | </ | ||
| - | |||
| - | Για να προσδιορίσετε την κλάση εκκίνησης μέσα στο jar αρχείο, | ||
| - | < | ||
| - | Main-Class: myMainClass | ||
| - | </ | ||
| - | |||
| - | Για την δημιουργία ενός JAR αρχείου που περιέχει στο MANIFEST.MF αρχείo την παραπάνω γραμμή αρκεί να κάνουμε τα εξής. | ||
| - | - Δημιουργούμε ένα αρχείο text (π.χ. manifest-info.txt) που περιέχει την γραμμή που θέλουμε να προσθέσουμε στο MANIFEST.MF αρχείο δηλ. '' | ||
| - | - Στη συνέχεια δημιουργούμε jar αρχείο ως εξής < | ||
| - | |||
| - | Αν δεν θέλετε να φτιάξετε αρχείο txt θα μπορούσατε να γράψετε το εξής. | ||
| - | < | ||
| - | jar cvfe homework1.jar myMainClass ./*.class | ||
| - | </ | ||
| - | |||
| - | <WRAP tip 70% center round> | ||
| - | Όταν εκτελούμε λογισμικό με χρήση αρχείων JAR η επιλογή --classpath δεν λαμβάνεται υπόψη. Σε αυτή την περίπτωση όλες οι βιβλιοθήκες που είναι απαραίτητες για το πρόγραμμα μας (εκτός από τις standard βιβλιοθήκες της Java) θα πρέπει να βρίσκονται μέσα στο συγκεκριμένο αρχείο JAR. | ||
| - | </ | ||
| - | |||
| - | |Προηγούμενο: | ||