Apache Ant (egy másik ügyes eszköz) | |
---|---|
Típusú | Szerelési automatizálás |
Fejlesztő | Apache Software Foundation |
Beírva | Java [2] [1] |
Operációs rendszer | Többplatformos szoftver |
Első kiadás | 2000. július és 2006. február 17. [1] |
Hardver platform | Java virtuális gép |
legújabb verzió |
|
Engedély | Apache 2.0 licenc |
Weboldal | ant.apache.org |
Médiafájlok a Wikimedia Commons oldalon |
Az Apache Ant ( angol hangya - hangya és egy mozaikszó - "Another Neat Tool") egy olyan segédprogram , amely automatizálja a szoftvertermékek létrehozásának folyamatát. Ez a make segédprogram többplatformos analógja , ahol minden parancs XML formátumban van írva.
Az Ant a Jakarta projekt részeként jött létre , ma az Apache Software Foundation független első szintű projektje .
Az első verziót a Sun Microsystems mérnöke, James Davidson fejlesztette ki.) . _ _ _
Az Ant, ellentétben a másik projektépítő Apache Mavennel , inkább kötelező , semmint deklaratív projektfelépítést biztosít.
A make-vel ellentétben az Ant segédprogram teljesen platformfüggetlen, csak a Java munkakörnyezet ( JRE ) telepítését igényli a használt rendszerre . Az operációs rendszer parancsainak elhagyása és az XML formátum hordozhatóságot biztosít a szkriptek számára.
Az összeállítási folyamatot egy XML -szkript vezérli, amelyet Build fájlnak is neveznek. Először is ez a fájl tartalmazza a projekt definícióját, amely egyedi célokból áll ( Targets ). A célok összehasonlíthatók a programozási nyelvek eljárásaival , és feladatparancsokat tartalmaznak ( Tasks ). Mindegyik feladat egy oszthatatlan, atomi parancs, amely valamilyen elemi műveletet hajt végre.
A célok között függőségek definiálhatók - minden cél csak azután kerül végrehajtásra, hogy az összes olyan cél megvalósult, amelytől függ (ha már korábban teljesültek, akkor az újbóli végrehajtás nem történik meg).
Tipikus példák a célokra: tiszta (köztes fájlok eltávolítása), fordítás ( összes osztály fordítása), telepítés ( az alkalmazás telepítése a kiszolgálón). A konkrét célok és azok összefüggései a projekt sajátosságaitól függenek.
Az Ant lehetővé teszi saját feladattípusok meghatározását bizonyos interfészeket megvalósító Java osztályok létrehozásával .
A disztribúció számos könyvtárat tartalmaz, amelyek sokféle feladatot érintenek. Ezenkívül további könyvtárak is elérhetők a projekt weboldalán, amelyek kiterjesztik a termék funkcionalitását, például a harmadik féltől származó rendszerekkel való integrációhoz. A standard verzió több mint 150 feladattípust tartalmaz. Az alábbiakban példákat mutatunk be az ilyen parancsokra.
A kód | Akció |
---|---|
javac | Java kód fordítása |
másolat | fájlok másolása |
töröl | fájlok és könyvtárak törlése |
mozog | fájlok és könyvtárak mozgatása |
cserélje ki | szövegtöredékek cseréje a fájlokban |
junit | egységtesztek automatikus futtatása |
végrehajtó | külső parancs végrehajtása |
postai irányítószám | Zip archívum létrehozása |
cvs | a CVS parancs végrehajtása |
posta | email küldése |
xslt | Átalakítja az XSLT -t |
Ez a szkript két célt határoz meg, a clean és a build . Az első eltávolítja az ideiglenes fájlokat, a második lefordítja és létrehoz egy JAR archívumot. Az összeállítási cél a clean függvénytől függ , így amikor fut, először megtisztítja, és csak ezután végzi el a tényleges összeállítási feladatokat. A Build is ki van választva alapértelmezett célként. Ez azt jelenti, hogy a parancsfájl feldolgozása során a cél kifejezetten megadása nélkül kerül végrehajtásra.
<?xml version="1.0"?> <project default= "build" basedir= "." > <property name= "name" value= "AntBuildJar" /> <property name= "src.dir" location= "${basedir}/src" /> <property name= "build" location= "${basedir} /build" /> <property name= "build.classes" location= "${build}/classes" /> <útvonal id= "libs.dir" > <fájlkészlet dir= "lib" include = "**/* .jar" /> </path> <!-- Alkalmazás felépítése --> <target name= "build" dependent= "clean" description= "Építi az alkalmazást" > <!-- Könyvtárak létrehozása --> <mkdir dir = "${build.classes}" /> <!-- Forrásfájlok fordítása --> <javac srcdir= "${src.dir}" destdir= "${build.classes}" debug= "false" deprecation= "true" optimize= "true" > <classpath refid= "libs.dir" /> </javac> <!-- Kötelező fájlok másolása --> <copy todir= "${build.classes}" > < fileset dir= "${src.dir}" include = "**/*.*" excludes = "** /*.java" /> </copy> <!-- JAR-fájl létrehozása --> <jar jarfile= "${build}/${name}.jar" > <fileset dir= "${build.classes}" /> </jar> </target > <!-- Tisztítás --> <target name= "clean" description= "Eltávolítja az összes ideiglenes fájlt" > <!-- Fájlok eltávolítása --> <delete dir= "${build.classes}" /> </target > </project>Apache Software Foundation | |||||||
---|---|---|---|---|---|---|---|
Legfelső szintű projektek |
| ||||||
Alprojektek |
| ||||||
Apache |
| ||||||
Egyéb projektek | |||||||
Fejlesztő projektek ( inkubátor ) |
| ||||||
Leszerelt projektek ( tetőtér ) | |||||||
|
Szerelési automatizálási rendszerek | |
---|---|