java:jar_files:intro

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
java:jar_files:intro [2015/01/23 13:47]
gthanos [Βλέποντας τα περιεχόμενα ενος JAR file]
java:jar_files:intro [2015/02/17 11:50]
gthanos removed
Line 20: Line 20:
 <code> <code>
 cd homework1/src/ cd homework1/src/
-jar cvf homework1.jar ./+jar cvf homework1.jar ./*.class
 mv homework1.jar ../ mv homework1.jar ../
 </code> </code>
Line 28: Line 28:
 <code> <code>
 cd homework1 cd homework1
-jar cvf homework1.jar -C src/ ./+jar cvf homework1.jar -C src/ ./*.class
 </code> </code>
  
Line 37: Line 37:
 | 0 | no compression added to the jar file | | 0 | no compression added to the jar file |
 | M | το Manifest αρχείο που προστίθεται δεν θα προστεθεί | | M | το Manifest αρχείο που προστίθεται δεν θα προστεθεί |
-| m | Χρησιμοποιείται για να προστεθεί ειδική πληροφορία στο Manifest αρχείο, ως εξής <code>jar cmf existing-manifest jar-file input-file(s) </code> |+| m | Χρησιμοποιείται για να προστεθεί ειδική πληροφορία στο Manifest αρχείο, ως εξής <code>jar cmf extra-manifest.txt jar-file input-file(s) </code>, όπου το αρχείο ''extra-manifest.txt'' περιέχει την επιπλέον πληροφορία που θέλουμε να προσθέσουμε. |
 | C | αλλαγή του τρέχοντος καταλόγου πριν την εκτέλεση της εντολής jar | | C | αλλαγή του τρέχοντος καταλόγου πριν την εκτέλεση της εντολής jar |
  
Line 68: Line 68:
 </code> </code>
  
 +===== Εκτελώντας λογισμικό σε αρχεία JAR =====
 +
 +Μπορείτε να εκτελέσετε ένα πρόγραμμα που βρίσκεται σε ένα αρχείο JAR χρησιμοποιώντας την παρακάτω εντολή
 +
 +<code>
 +java -jar jar-file
 +</code>
 +
 +To flag ''-jar'' ενημερώνει το περιβάλλον εκτέλεσης ότι η εφαρμογή είναι πακεταρισμένη μέσα σε ένα αρχείο jar. Μπορείτε να χρησιμοποιήσετε μόνο ένα αρχείo jar για την παραπάνω δήλωση. Για να εκτελεστεί με επιτυχία το παραπάνω πρόγραμμα απαραίτητη προϋπόθεση είναι το περιβάλλον εκτέλεσης να γνωρίζει ποια κλάση από όσες περιέχονται μέσα στο jar αρχείο είναι η κλάση από την οποία ξεκινά η εφαρμογή. Η κλάση εκκίνησης είναι η κλάση που περιέχει μία συνάρτηση 
 +
 +<code java>
 +public static void main(String args[]) { .... }
 +</code>
 +
 +Για να προσδιορίσετε την κλάση εκκίνησης μέσα στο jar αρχείο, αρκεί να προσθέσετε μέσα στο αρχείο MANIFEST.MF την ακόλουθη γραμμή
 +<code>
 +Main-Class: myMainClass
 +</code>
 +
 +Για την δημιουργία ενός JAR αρχείου που περιέχει στο MANIFEST.MF αρχείo την παραπάνω γραμμή αρκεί να κάνουμε τα εξής.
 +  - Δημιουργούμε ένα αρχείο text (π.χ. manifest-info.txt) που περιέχει την γραμμή που θέλουμε να προσθέσουμε στο MANIFEST.MF αρχείο δηλ. ''Main-Class: myMainClass''.
 +  - Στη συνέχεια δημιουργούμε jar αρχείο ως εξής <code>jar cvfm homework1.jar manifest-info.txt ./</code>. Παραρητήστε την προσθήκη του option **'m'** σε συνδυασμό με την χρήση του αρχείου που δημιουργήσαμε και περιέχει το extra header για το MANIFEST.MF.
 +
 +Αν δεν θέλετε να φτιάξετε αρχείο txt θα μπορούσατε να γράψετε το εξής.
 +<code>
 +jar cvfe homework1.jar myMainClass ./*.class
 +</code>
 +
 +|Προηγούμενο: [[ :java:packages:using | Χρήση πακέτων ]] | Επόμενο: [[ :java:classpath | Η μεταβλητή CLASSPATH ]]|