|
|||||||||||||||||||||||||||||||||||||||||
| ISBN: 3427011550 ISBN: 3427011550 ISBN: 3427011550 ISBN: 3427011550 | |||||||||||||||||||||||||||||||||||||||||
|
|
Wir empfehlen: | ||||||||||||||||||||||||||||||||||||||||
Ant - Das Apache Build-Werkzeug für JavaEin Vergleich mit dem Make-System ... [ Ant ] ... [ Installation ] ... [ Grundlagen von Make ] ... [ Grundlagen von Ant ] ... Übersicht : Grundlagen von MakeMakefilesUm dem Make-System mitzuteilen, welche Aufgaben bewältigt werden sollen, muss man ein so genanntes Makefile erstellen. Darin gibt man Regeln an, aus welchen Quellen ein Ziel erstellt wird und welche Befehle dazu notwendig sind. Ein solcher Block aus Quel-len, Ziel und den Befehlen wird folgendermaßen aufgeschrieben: Ziel : Quelle Quelle ... Befehl Befehl Da in dem Befehlsteil beliebige Kommandos stehen können, hat Make keine
Möglichkeit zu erkennen, ob es sich noch um Befehle oder den Beginn einer
neuen Regel handelt. Um diese Unterscheidung zu ermöglichen, müssen
Befehlszeilen immer mit einem Tabulator beginnen. Test.class : Test.java javac -d . Test.java Mit dieser Regel mit dem Make-System gesagt, wie die Datei Test.class aus der Datei Test.java erstellt wird. Ausführen bei BedarfDas reine Ausführen von Befehlen ist aber nicht Sinn und Zweck des Make-Systems. Eine Aneinanderreihung von Compiler-Aufrufen ließe sich mit einem Shell-Script bzw. einer Batch-Datei wesentlich schneller erledigen und würde keine zusätzlichen Programme erfordern. Das Besondere an Make ist, dass die Befehle einer Regel nur ausgeführt werden, wenn es wirklich notwendig ist. Hier kommen die Abhängigkeiten von Quellen und Zielen ins Spiel. Da man dem System mitgeteilt hat, von welchen Quellen ein bestimmtes Ziel abhängt, kann es anhand der Änderungsdaten von Quellen und Ziel feststellen, ob die Quellen nach dem letzten Erstellen des Ziels verändert wurden. Nur wenn dies der Fall ist werden die zu der Regel gehörenden Befehle ausgeführt. Mehrere Regeln verbindenIn den meisten Fällen bestehen Programme aus mehreren Teilen, und nicht alle Teile müssen neu übersetzt werden, wenn sich eine Quelldatei geändert hat. Wenn z.B. mehrere Klassen in einer JAR-Datei zusammengefasst werden sollen und sich eine Klasse ändert, dann muss auch nur die geänderte Klasse neu kompiliert werden. Da es sich bei Quellen und Zielen für gewöhnlich um Dateien handelt, können die Quellen einer Regel gleichzeitig Ziel einer anderen Regel sein. Dadurch kann man ein Projekt in Unterprojekte aufteilen: test.jar : a.class b.class c.class jar -cf test.jar a.class b.class c.class a.class : a.java javac -d . a.java b.class : b.java javac -d . b.java c.class : c.java javac -d . c.java Wenn nun die Datei test.jar neu erstellt werden soll, wird zuerst überprüft, ob eine oder mehrere der Quellen Regeln darstellen. Ist dies der Fall, werden zunächst diese Regeln überprüft und gegebenenfalls deren Befehle ausgeführt. Erst danach werden die Änderungsdaten von test.jar und den class-Dateien verglichen. AufrufWenn keine Parameter angegeben werden sucht Make im aktuellen Verzeichnis nach
einer Datei, die makefile oder Makefile heißt. Die Entwickler
von GNU Make empfehlen Makefile, da dieser Name in einem Verzeichnislisting
normalerweise recht weit oben steht. Danach wird in der gefundenen Datei die
erste Regel ausgeführt. ... [ Ant ] ... [ Installation ] ... [ Grundlagen von Make ] ... [ Grundlagen von Ant ] ... |
|
||||||||||||||||||||||||||||||||||||||||
|
Zurück zur Themenseite: StudyPaper.com/Startseite/Computer/Informatik/Programmieren Das Setzen von Verweisen (Links) auf diese Seite ist gestattet und bedarf keine vorherige Absprache. | |||||||||||||||||||||||||||||||||||||||||
| Startseite | english | Bookmark setzen | Webseite weiterempfehlen | Copyright © | Impressum | |||||||||||||||||||||||||||||||||||||||||