Elementare Datei - Tasks

Auf dieser Seite wird Beispielhaft auf elementare Möglichkeiten mit Ant eingegangen. Als Basis dienen dabei die Dateioperationen (Datei - Tasks) um Dateien und Verzeichnisse zu kopieren, löschen und zu verscheiben, sowie Verzeichnisse anzulegen. Hierbei kommen immer mehr Elemente eines Ant-Skripts zum Einsatz.

copy
Kopiert Dateien und Verzeichnisse.

delete
Löscht Dateien und Verzeichnisse.

mkdir
Erzeugt ein Verzeichnis. Evtl. nicht vorhandene Unterverzeichnisse werden direkt mit erzeugt.

move
Verschiebt Dateien und Verzeichnisse.

Ausgangsbasis

Ausgangsbasis für das folgende Beispiel ist folgende Verzeichnisstruktur:

+c
 +antExample
  +a
   +dir1
    -file1.txt
            

Die Beispiele funktionieren ebenfalls unter Unix/Linux. Dazu muss nur der Basispfad der Beispiele entsprechend angepasst werden.

Verzeichnis erzeugen und Datei kopieren

Das nachfolgende Ant-Skript erzeugt zunächst ein neues Verzeichnis dir2 in der gleichen Ebene wie das Verzeichnis dir1. Anschließend wird die Datei file1.txt aus dir1 nach dir2 kopiert.

<project>
  <property name="mydir" location="c:/antExample/a"/>

  <!-- Schritt 1 -->
  <mkdir dir="${mydir}/dir2"/>
  <copy todir="${mydir}/dir2" file="${mydir}/dir1/file1.txt"/>

</project>
            

Nachdem Ant das Skript abgearbeitet hat, ergibt sich folgende Verzeichnisstruktur:

+c
 +antExample
  +a
   +dir1
    -file1.txt
   +dir2
    -file1.txt
            

In Zeile zwei des Skripts wird ein Property-Task verwendet. Ein Property besteht dabei aus Name und Wert. Dieser Property-Task eignet sich besonders, um das restliche Skript unabhängig von einer Verzeichnisstruktur zu machen. Wird im Skript nun innerhalb von ${und} der Property-Name eingetragen wird an dieser Stelle der Wert des Properties verwendet. Properties können, einmal gesetzt, nicht mehr verändert werden. Properties sind Immutable (unveränderlich).