1 ant che cos’è come si utilizza funzionalità principali documentazione e installazione corso di...
TRANSCRIPT
![Page 1: 1 Ant Che cos’è Come si utilizza Funzionalità principali Documentazione e Installazione Corso di Programmazione Internet](https://reader036.vdocuments.net/reader036/viewer/2022082807/5542eb6a497959361e8d6795/html5/thumbnails/1.jpg)
1
Ant
• Che cos’è
• Come si utilizza
• Funzionalità principali
• Documentazione e Installazione
Corso di Programmazione Internet
![Page 2: 1 Ant Che cos’è Come si utilizza Funzionalità principali Documentazione e Installazione Corso di Programmazione Internet](https://reader036.vdocuments.net/reader036/viewer/2022082807/5542eb6a497959361e8d6795/html5/thumbnails/2.jpg)
2
Ant - Cos’è
• È un “build” tool. Viene utilizzato per automatizzare le operazioni di compilazione, creazione di jar file e altro.• È multipiattaforma : è scritto in java e legge un file di configurazione scritto in XML (build.xml)• > ant
– ricerca automaticamente il file build.xml• build.xml specifica cosa Ant deve fare, ne determina il comportamento
Corso di Programmazione Internet
![Page 3: 1 Ant Che cos’è Come si utilizza Funzionalità principali Documentazione e Installazione Corso di Programmazione Internet](https://reader036.vdocuments.net/reader036/viewer/2022082807/5542eb6a497959361e8d6795/html5/thumbnails/3.jpg)
3
build.xml (1/2)
• project tag<project name="mioProgetto" default="compile" basedir=".">
• properties <property name="src" value="."/>
– build-in properties es: ${os.name}
• target tag (tipicamente ce ne sono più di uno)
Posso avere un target di inizializzazione, uno per compilare, uno per creare un jar file etc...
Corso di Programmazione Internet
![Page 4: 1 Ant Che cos’è Come si utilizza Funzionalità principali Documentazione e Installazione Corso di Programmazione Internet](https://reader036.vdocuments.net/reader036/viewer/2022082807/5542eb6a497959361e8d6795/html5/thumbnails/4.jpg)
4
build.xml (2/2)
<target name="compile" depends="init”>
<!-- Compile the java code from ${src} into ${build} -->
<javac srcdir="${src}" destdir="${build}"/>
</target>
• Task
Sono pezzi di codice che possono essere esegui. Esempi: javac, tstamp
I task sono contenuti all’interno dei target. Esistono task predefiniti, ma altri se ne possono creare
Corso di Programmazione Internet 1
![Page 5: 1 Ant Che cos’è Come si utilizza Funzionalità principali Documentazione e Installazione Corso di Programmazione Internet](https://reader036.vdocuments.net/reader036/viewer/2022082807/5542eb6a497959361e8d6795/html5/thumbnails/5.jpg)
5
Running Ant
Opzioni a linea di comando–find ricerca ricorsivamente il buil file nelle directory padre–buildfile nomefile cerca nomefile anziché build.xml–help stampa messaggio di aiuto–version stampa la versione ed esce–quiet esegue ma non stampa niente–verbose esegue stampando molte informazioni–Dproperty=value imposta il valore delle propertyCorso di Programmazione Internet
![Page 6: 1 Ant Che cos’è Come si utilizza Funzionalità principali Documentazione e Installazione Corso di Programmazione Internet](https://reader036.vdocuments.net/reader036/viewer/2022082807/5542eb6a497959361e8d6795/html5/thumbnails/6.jpg)
6
Alcuni Tasks (1/4)
<tstamp\> Imposta le properties DSTAMP, TSTAMP, TODAY
<javac> compila e scrive i .class nella directory di destinazione. Vengono compilati solo i file il cui .class corrispondente o non esiste o è meno recente del .java.
Il compilatore da usare può essere specificato nella property
build.compilerSe non specificato diversamente, vengono compilati tutti i file presenti nelle directory srcdirCorso di Programmazione Internet
![Page 7: 1 Ant Che cos’è Come si utilizza Funzionalità principali Documentazione e Installazione Corso di Programmazione Internet](https://reader036.vdocuments.net/reader036/viewer/2022082807/5542eb6a497959361e8d6795/html5/thumbnails/7.jpg)
7
Alcuni Tasks (2/4)<property name="src1" value= ”prova1"/><property name="src2" value= ”prova2"/>…<javac srcdir=“${src1}:${src2}” destdir=“${build}”
includes=“MioFile*.java”excludes=“MioFileOld.java”>
Compila tutti e solo i file che si trovano nelle directory prova1 e prova2 il cui nome inizia con “MioFile”. Non compila MioFileOld.java
Corso di Programmazione Internet 7
![Page 8: 1 Ant Che cos’è Come si utilizza Funzionalità principali Documentazione e Installazione Corso di Programmazione Internet](https://reader036.vdocuments.net/reader036/viewer/2022082807/5542eb6a497959361e8d6795/html5/thumbnails/8.jpg)
8
Alcuni Tasks (3/4)<javac srcdir=“${src1}” destdir=“${build}”
includes=“MiaDir/*”>
Compila tutti e solo i file presenti nella directory prova1\MiaDir\
<javac srcdir=“${src1}” destdir=“${build}”includes=“MiaDir/**”>
Compila tutti e solo i file presenti nella directoryprova1\MiaDir\ e in tutti i file presenti in tutte le sue sottodirectory. Es:prova1\MiaDir\MiaDir2\Ciao\prova.java
Corso di Programmazione Internet
![Page 9: 1 Ant Che cos’è Come si utilizza Funzionalità principali Documentazione e Installazione Corso di Programmazione Internet](https://reader036.vdocuments.net/reader036/viewer/2022082807/5542eb6a497959361e8d6795/html5/thumbnails/9.jpg)
9
Alcuni Tasks (4/4)<chmod> cambia i permessi dei file e/o delle
directory. Funziona solo sotto UNIX
<copyfile> copia uno o più file<copydir> copia un albero di directory<delete> cancella uno o più file<deltree> cancella una directory <exec> esegue un comando di sistema <zip> produce un file .zip<unzip> esegue l’unzip su un file .zip o .jar
<get> recupera un file da un’URL specificata
<mkdir> crea una directoryCorso di Programmazione Internet
![Page 10: 1 Ant Che cos’è Come si utilizza Funzionalità principali Documentazione e Installazione Corso di Programmazione Internet](https://reader036.vdocuments.net/reader036/viewer/2022082807/5542eb6a497959361e8d6795/html5/thumbnails/10.jpg)
10
Documentazione e Installazione
Ant home page : jakarta.apache.org/ant/index.html Ant user guide : www.itpath.com/userGuide.htm
Su linux (macchine laboratorio): inserire nel file .cshrc-Linux le righe:
setenv ANT_HOME $HOME/ANT/jakarta-ant-1.4.1
setenv JAVA_HOME /usr/local/jdk1.3
alias ant "$ANT_HOME/bin/ant"
setenv PATH $PATH":$ANT_HOME/bin"
setenv CLASSPATH "$ANT_HOME/lib/ant.jar"
Corso di Programmazione Internet
![Page 11: 1 Ant Che cos’è Come si utilizza Funzionalità principali Documentazione e Installazione Corso di Programmazione Internet](https://reader036.vdocuments.net/reader036/viewer/2022082807/5542eb6a497959361e8d6795/html5/thumbnails/11.jpg)
11
Documentazione e Installazione
Su windows, nel file Autoexec.bat aggiungere le seguenti righe:
set ANT_HOME=c:\ant
set JAVA_HOME=c:\jdk1.3.1_01
set CLASSPATH=%ANT_HOME%\lib\ant.jarPATH=%ANT_HOME%\bin
Su windows 95/98 potrebbe dare il problema di “spazio d’ambiente esaurito”, quindi occorre aggiungere la seguente riga al file config.sysshell=c:\command.com /E:4096 /P
Corso di Programmazione Internet