Apache Ant

software per l'automazione del processo di compilazione e installazione

Apache Ant è un software per l'automazione del processo di build. È simile a make, ma scritto in Java ed è principalmente orientato allo sviluppo in Java. Ant è un progetto Apache, open source, ed è distribuito sotto licenza Apache.

Apache Ant
software
Logo
Logo
Schermata di esempio
Schermata di esempio
GenereAutomazione dello sviluppo
SviluppatoreApache Software Foundation
Data prima versione19 luglio 2000
Ultima versione1.10.14 (21 agosto 2023)
Sistema operativoMultipiattaforma
LinguaggioJava
Licenzalicenza Apache 2.0
(licenza libera)
Sito webant.apache.org/

Esempio di file build.xml

modifica

Esso si basa su script in formato XML di cui segue un esempio:

<?xml version="1.0"?>
<project name="Hello" default="compile">
    <target name="clean" description="remove intermediate files">
        <delete dir="classes"/>
    </target>
    <target name="compile" description="compile the Java source code to class files">
        <mkdir dir="classes"/>
        <javac srcdir="." destdir="classes"/>
    </target>
    <target name="jar" depends="compile" description="create a Jar file for the application">
        <jar destfile="hello.jar">
            <fileset dir="classes" includes="**/*.class"/>
            <manifest>
                <attribute name="Main-Class" value="HelloProgram"/>
            </manifest>
        </jar>
    </target>
</project>

Ogni build file definisce un project composto da target in cui sono elencati i task, le istruzioni da eseguire. Nel progetto possono essere definite delle properties, coppie nome e valore immodificabili nel resto del progetto. I target possono avere delle dipendenze da altri target.

Portabilità

modifica

La principale caratteristica di ant è la portabilità; per esempio comandi strettamente dipendenti dalla piattaforma come rm –rf classes nell'esempio precedente sono semplicemente eseguiti indipendentemente dalla piattaforma dal comando <delete dir="classes"/> del target clean.

Una discrepanza comune tra le varie piattaforme è il modo in cui il percorso delle directory è specificato. UNIX usa uno slash (/) per delimitare i componenti di un path, a differenza di Microsoft Windows che usa un backslash (\). La sintassi ant lascia libero l'autore del codice di usare una convenzione qualsiasi, back/forward slash per le directory, punto e virgola o due punti (; o :) per i separatori dei path (classpath). Ant converte tutto nella forma più appropriata alla piattaforma corrente.

Ant viene eseguito da riga di comando e la sintassi del comando è sempre a disposizione eseguendo il comando: ant --help

Tipicamente viene usato nel modo seguente: ant –buildfile <build_file>.xml –D<proprieta1>=<valore1> –D<proprieta2>=<valore2> <target1> <target2>


Altri progetti

modifica

Collegamenti esterni

modifica
Controllo di autoritàVIAF (EN181177554 · LCCN (ENn2002066009 · GND (DE4689797-5 · J9U (ENHE987009950831905171
  Portale Software libero: accedi alle voci di Wikipedia che trattano di Software libero