java:ant

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:ant [2016/02/12 13:46]
gthanos
java:ant [2016/02/24 14:21]
doufexi [Windows]
Line 1: Line 1:
 ====== Αυτόματη μεταγλώττιση με χρήση Apache Ant ====== ====== Αυτόματη μεταγλώττιση με χρήση Apache Ant ======
  
-Το [[http://​ant.apache.org/​|Apache Ant]] είναι ένα εργαλείο δημιουργίας διεργασιών ​που ​αλληλεξαρτούμενων μεταξύ τους με στόχο την μεταγλώττιση σύνθετων προγραμμάτων. Η λογική λειτουργίας του είναι αντίστοιχη του [[https://​www.gnu.org/​software/​make/​|GΝU Make]] και άλλων ανάλογων προγραμμάτων,​ περιέχει όμως χαρακτηριστικά που διευκολύνουν την διαδικασία μεταγλώττισης αρχείων JAVA. +Το [[http://​ant.apache.org/​|Apache Ant]] είναι ένα εργαλείο δημιουργίας διεργασιών αλληλεξαρτούμενων μεταξύ τους με στόχο την μεταγλώττιση σύνθετων προγραμμάτων. Η λογική λειτουργίας του είναι αντίστοιχη του [[https://​www.gnu.org/​software/​make/​|GΝU Make]] και άλλων ανάλογων προγραμμάτων,​ περιέχει όμως χαρακτηριστικά που διευκολύνουν την διαδικασία μεταγλώττισης αρχείων JAVA. 
  
-Βασικά χαρακτηριστικά του [[http://​ant.apache.org/​|Apache Ant]] είναι ότι ​τα εξής:+Βασικά χαρακτηριστικά του [[http://​ant.apache.org/​|Apache Ant]] είναι ότι εξής:
   - Τα configuration/​build αρχεία έχουν format [[http://​www.w3schools.com/​xml|XML]].   - Τα configuration/​build αρχεία έχουν format [[http://​www.w3schools.com/​xml|XML]].
   - Το configuration αρχείο έχει όνομα **build.xml**.   - Το configuration αρχείο έχει όνομα **build.xml**.
Line 27: Line 27:
 ===== Διάρθρωση καταλόγων αρχείων *.java και εκτελέσιμων αρχείων *.class ===== ===== Διάρθρωση καταλόγων αρχείων *.java και εκτελέσιμων αρχείων *.class =====
  
-Όπως ήδη αναφέρθηκε,​ μια καλή πρακτική ανάπτυξης κώδικα JAVA είναι να διαχωρίζουμε τα αρχεία πηγαίου κώδικα ***.java** σε σχέση με τα μεταγλωττισμένα αρχεία ***.class**. Για τον σκοπό αυτό σε κάθε project, δημιουργούμε δύο φακέλους **src** που περιέχει αρχεία πηγαίου κώδικα και **build** που περιέχει μεταγλωττισμένα αρχεία. Ο κατάλογος **build** μπορεί να διακριθεί στους υποκαταλόγους **build/​classes** (περιέχει τα αρχεία ***.class**) και **build/​jar** (περιέχει τα αρχεία JAR, εφόσον υπάρχουν). Συνολικά η προτεινόμενη δομή καταλόγων είναι η εξής: +Όπως ήδη αναφέρθηκε,​ μια καλή πρακτική ανάπτυξης κώδικα JAVA είναι να διαχωρίζουμε τα αρχεία πηγαίου κώδικα ***.java** σε σχέση με τα μεταγλωττισμένα αρχεία ***.class**. Για τον σκοπό αυτό σε κάθε project, δημιουργούμε δύο φακέλους**src** που περιέχει αρχεία πηγαίου κώδικα και **build** που περιέχει μεταγλωττισμένα αρχεία. Ο κατάλογος **build** μπορεί να διακριθεί στους υποκαταλόγους **build/​classes** (περιέχει τα αρχεία ***.class**) και **build/​jar** (περιέχει τα αρχεία JAR, εφόσον υπάρχουν). Συνολικά η προτεινόμενη δομή καταλόγων είναι η εξής: 
-  * **src** --> πηγαίως κώδικας+  * **src** --> πηγαίoς κώδικας
   * **build/​classes** --> αρχεία *.class   * **build/​classes** --> αρχεία *.class
   * **build/​jar** --> αρχεία *.jar   * **build/​jar** --> αρχεία *.jar
Line 51: Line 51:
  
     <target name="​jar"​ depends="​build">​     <target name="​jar"​ depends="​build">​
-        <jar destfile="​build/​jar/​ce210library.jar" basedir="​build/​classes"​ includes="​ce210/**" excludes="​ce210/​temp/​**">​+        <jar destfile="​build/​jar/​ce325library.jar" basedir="​build/​classes"​ includes="​ce325/**" excludes="​ce210/​temp/​**">​
         </​jar>​         </​jar>​
     </​target>​     </​target>​
Line 78: Line 78:
 Εγκατάσταση της εφαρμογής [[https://​code.google.com/​p/​winant/​|winant]]. Εγκατάσταση της εφαρμογής [[https://​code.google.com/​p/​winant/​|winant]].
  
-|Προηγούμενο:​ [[ :​java:​classpath | Η μεταβλητή περιβάλλοντος CLASSPATH ​ ]] | +|Προηγούμενο:​ [[ :​java:​classpath | Η μεταβλητή περιβάλλοντος CLASSPATH ​ ]] | [[ :toc | Περιεχόμενα ]] | Επόμενο:​ [[ :​java:​interfaces | Διεπαφές (Interfaces) ​ ]] |
java/ant.txt · Last modified: 2016/02/26 11:15 (external edit)