Apache Ant este un program complet gratuit, cu platformă și open source, implementat în Java, distribuit împreună cu proiectul Apache și proiectat de la bază ca un puternic construi sistemul pentru compilarea aplicațiilor scrise în limbajul de programare Java.
Ca și GNU
Software-ul Apache Ant, care este un program de linie de comandă, este destul de similar cu compilarea open source GNU make, dar se știe că are un suport mult mai bun pentru diferite probleme de tip cross-platform cu dezvoltarea de aplicații Java. p>
Sistemul perfect de construcție pentru multe proiecte Java
Fiind un proiect Apache, software-ul Apache Ant este sistemul perfect de construcție pentru multe proiecte Java de la Apache, precum și numeroase alte proiecte open source independente care sunt scrise în limbajul de programare Java.
Noțiuni de bază cu Apache Ant
Fie că sunteți un utilizator final care are nevoie de Apache Ant pentru a compila sursele unei aplicații scrise în Java, fie că sunteți un aspirant dezvoltator Java, puteți utiliza cu ușurință aplicația Apache Ant în sistemul dvs. de operare ales (a se vedea secțiunea de mai jos pentru OS-urile acceptate).
Pentru comoditatea dvs., software-ul este distribuit ca un binar pre-construit, care poate fi folosit pe orice sistem de operare GNU / Linux, sunt acceptate arome de 32 și 64 de biți. Desigur, utilizatorii avansați care doresc să optimizeze instalarea pot, de asemenea, să aplice pachetul sursă de la Softoware.
Pur și simplu rulați & & rsquo; comandă într-un emulator terminal pentru a vedea mesajul de utilizare și opțiunile de linie de comandă disponibile. Rețineți că, în unele distribuții, Ant necesită software-ul OpenJDK.
Rulează pe GNU / Linux, Microsoft Windows și Mac OS X
Fiind scris în Java, Apache Ant este un software care rulează pe orice sistem de operare pe computer, în care sunt suportate tehnologiile JRE (Java Runtime Environment), inclusiv toate distribuțiile GNU / Linux, precum și Mac OS X și Microsoft Windows OS
Ce este nou în această versiune:
- Modificări care ar putea sparge mediile mai vechi:
- atributul prefixValues nu a funcționat așa cum era de așteptat când a fost setat la false (implicit). Este destul de probabil ca fișierele existente să se bazeze pe comportamentul necorespunzător și așteaptă Ant să rezolve partea de valori împotriva proprietăților definite în fișierul proprietăților în sine - aceste fișiere de construcție trebuie să stabilească în mod explicit atributul prefixValues la adevărat. Raport Bugzilla 54769
- atunci când se potrivește cu o intrare a unui zip / tarfileset împotriva unui model, o linie slash va fi dezbrăcată de numele de intrare. Majoritatea arhivelor nu conțin drumuri cu tăișuri de conducere. Acest lucru poate cauza includerea / excluderea modelelor care încep cu o / pentru a opri orice potrivire. Astfel de modele au funcționat doar accidental și numai pe platforme cu mai multe rădăcini ale sistemului de fișiere. Raport Bugzilla 53949
- DirectorScanner și, astfel, setul de fișiere / dirset va elimina în mod silențios toate obiectele din sistemul de fișiere care nu sunt nici fișiere, nici directoare în conformitate cu java.io.File. Acest lucru împiedică Ant să citească țevi numite care ar putea duce la blocarea sau alt comportament nedefinit. Raportul Bugzilla 56149
- BuildFileTest și BaseSelectorTest au fost ambele depreciate în favoarea BuildFileRule și respectiv BaseSelectorRule, iar testele care au extins anterior aceste teste de bază au fost transformate în teste JUnit 4 folosind noua regulă. Orice test extern care sub-clasifică un test în spațiul de lucru Ant, mai degrabă decât în BuildFileTest, va trebui modificat fie pentru a folosi adnotările JUnit4, fie pentru a extinde direct BuildFileTest. Acest lucru nu va afecta niciunul dintre testele care sunt executate de junitul lui Ant sau sarcinile de tip batch care nu testează în mod specific codul lui Ant.
- Buguri fixe:
- / a eșuat când fișierul de import a fost încărcat dintr-un URI sau dintr-un borcan și a importat un fișier din sistemul de fișiere local printr-o cale absolută. Raport Bugzilla 50953
- ar putea importa aceeași resursă de două ori atunci când este importată prin diferite tipuri de resurse. Raport Bugzilla 55097
- mai multe apeluri către fișierul # mkdirs ar putea deveni victima unei situații de rasă în care un alt fir a creat deja același director. Raportul Bugzilla 55290
- creat "/" mai degrabă decât "./" pentru directorul părinte al jarfile dat. Raport Bugzilla 55049
- fixlastline = "adevărat" nu a funcționat atunci când utilizați anumite cititoare de filtre. Raport Bugzilla 54672
- mai multe locuri unde resursele sunt citite din borcane vor dezactiva în mod explicit cache-ul pentru a evita problemele cu reîncărcarea borcanelor. Raport Bugzilla 54473
- AntClassloader va ignora acum fișierele care fac parte din calea de clasă, dar nu fișierele zip atunci când scanează pentru resurse. A fost o excepție. Raportul Bugzilla 53964
- a cauzat un NullPointerException atunci când nu a fost setat nimic. Raportul Bugzilla 55949
- va include în continuare secțiunea principală a manifestelor de fișiere dacă nu există niciun atribut manifestat sau manifestat. Raport Bugzilla 54171
- citirea arborilor compilatorului a devenit mai defensiv Bugzilla Report 53754
- fără forță = "adevărat" nu numai că nu va suprascrie un fișier cu citire numai după cum era de așteptat, ci va elimina și fișierul existent. Raportul Bugzilla 53095
- ar elimina linkurile simbolice la fișierele neincluse. Acesta va șterge în continuare link-uri de simbol directoare care ar fi fost urmate chiar dacă nu sunt incluse în mod explicit. exclude-Modelele pot fi folosite pentru păstrarea legăturilor simbolice. Raportul Bugzilla 53959
- Câteodată, operațiile de copiere utilizând FileChannels NIO eșuează. Ant va încerca acum să utilizeze o operație de copiere bazată pe flux ca rezervă atunci când copia bazată pe Canal eșuează. Bugzilla Reports 53102 și 54397
- Javadoc.postProcessGeneratedJavadocs () eșuează pentru clasele care extind raportul Javadoc Bugzilla 56047
- TarInputStream va citi acum arhivele create de implementările de tip tar care codifică numerele mari prin faptul că nu adaugă o valoare NUL.
- metoda isExists () a URLResource a returnat false pozitive pentru URL-urile HTTP și FTP.
- Alte modificări:
- suport inițial pentru Java 1.9
- poate trece opțional System.in la procesul de la distanță Bugzilla Report 55393
- acceptă acum captarea erorii de ieșire a procesului executat și setarea unei proprietăți din codul de returnare. Raportul Bugzilla 48478
- are acum opțiunea de a eșua dacă javadoc emite avertismente. Raport Bugzilla 55015
- are un nou atribut de tip outputencoding. Raportul Bugzilla 39541
- se modifică la JUnitTestRunner și PlainJUnitResultFormatter pentru a face mai puține probabilități pentru OutOfMemoryErrors. Raport Bugzilla 45536
- se modifică la DOMElementWriter pentru a face mai puține probabilități pentru OutOfMemoryErrors. Raport Bugzilla 54147
- are un nou atribut binaryOutput care împiedică Ant să împartă ieșirea în linii. Acest lucru împiedică deteriorarea ieșirii binare, dar poate conduce la eroare, iar ieșirea normală este amestecată. Raportul Bugzilla 55667 Raportul Bugzilla 56156
- Elementele imbricate au acum un atribut opțional inputEncoding care poate fi utilizat pentru a specifica codificarea fișierelor citite care nu utilizează codificarea implicită a platformei. Raportul Bugzilla 56258
- Sarcina acceptă în mod explicit și acceptă codificarea conținutului gzip. Raportul Bugzilla 49453
- Un nou tip de colecție de resurse acționează ca o uniune a s și s care partajează aceeași configurație, dar au directoare de bază diferite. Raportul Bugzilla 48621
- are un atribut liniștit care face erorile jurnalului de sarcini numai atunci când este activată. GitHub Trage Cerere # 1
- are acum un atribut de fire care permite rularea testelor în mai multe fire. Raportul Bugzilla 55925
- adăugarea unei noi clase ProcessUtil care furnizează id-ul procesului procesului curent
- modificări pentru a permite rularea în paralel a testelor JUnit de Ant, prin folosirea directoarelor temporare unice
Ce este nou în versiunea 1.9.4:
- Modificări care ar putea sparge mediile mai vechi:
- atributul prefixValues nu a funcționat așa cum era de așteptat când a fost setat la false (implicit). Este destul de probabil ca fișierele existente să se bazeze pe comportamentul necorespunzător și așteaptă Ant să rezolve partea de valori împotriva proprietăților definite în fișierul proprietăților în sine - aceste fișiere de construcție trebuie să stabilească în mod explicit atributul prefixValues la adevărat. Raport Bugzilla 54769
- atunci când se potrivește cu o intrare a unui zip / tarfileset împotriva unui model, o linie slash va fi dezbrăcată de numele de intrare. Majoritatea arhivelor nu conțin drumuri cu tăișuri de conducere. Acest lucru poate cauza includerea / excluderea modelelor care încep cu o / pentru a opri orice potrivire. Astfel de modele au funcționat doar accidental și numai pe platforme cu mai multe rădăcini ale sistemului de fișiere. Raport Bugzilla 53949
- DirectorScanner și, astfel, setul de fișiere / dirset va elimina în mod silențios toate obiectele din sistemul de fișiere care nu sunt nici fișiere, nici directoare în conformitate cu java.io.File. Acest lucru împiedică Ant să citească țevi numite care ar putea duce la blocarea sau alt comportament nedefinit. Raportul Bugzilla 56149
- BuildFileTest și BaseSelectorTest au fost ambele depreciate în favoarea BuildFileRule și respectiv BaseSelectorRule, iar testele care au extins anterior aceste teste de bază au fost transformate în teste JUnit 4 folosind noua regulă. Orice test extern care sub-clasifică un test în spațiul de lucru Ant, mai degrabă decât în BuildFileTest, va trebui modificat fie pentru a folosi adnotările JUnit4, fie pentru a extinde direct BuildFileTest. Acest lucru nu va afecta toate testele care sunt executate de juniturile lui Ant sau sarcinile de tip batch care nu testează în mod specific codul lui Ant.
- Buguri fixe:
- / a eșuat când fișierul de import a fost încărcat dintr-un URI sau dintr-un borcan și a importat un fișier din sistemul de fișiere local printr-o cale absolută. Raport Bugzilla 50953
- ar putea importa aceeași resursă de două ori atunci când este importată prin diferite tipuri de resurse. Raport Bugzilla 55097
- mai multe apeluri către fișierul # mkdirs ar putea deveni victima unei situații de rasă în care un alt fir a creat deja același director. Raportul Bugzilla 55290
- creat "/" mai degrabă decât "./" pentru directorul părinte al jarfile dat. Raport Bugzilla 55049
- fixlastline = "adevărat" nu a funcționat atunci când utilizați anumite cititoare de filtre. Raport Bugzilla 54672
- mai multe locuri unde resursele sunt citite din borcane vor dezactiva în mod explicit cache-ul pentru a evita problemele cu reîncărcarea borcanelor. Raport Bugzilla 54473
- AntClassloader va ignora acum fișierele care fac parte din calea de clasă, dar nu fișierele zip atunci când scanează pentru resurse. A fost o excepție. Raportul Bugzilla 53964
- a cauzat un NullPointerException atunci când nu a fost setat nimic. Raportul Bugzilla 55949
- va include în continuare secțiunea principală a manifestelor de fișiere dacă nu există niciun atribut manifestat sau manifestat. Raport Bugzilla 54171
- citirea arborilor compilatorului a devenit mai defensiv Bugzilla Report 53754
- fără forță = "adevărat" nu numai că nu va suprascrie un fișier cu citire numai după cum era de așteptat, ci va elimina și fișierul existent. Raportul Bugzilla 53095
- ar elimina linkurile simbolice la fișierele neincluse. Acesta va șterge în continuare link-uri de simbol directoare care ar fi fost urmate chiar dacă nu sunt incluse în mod explicit. exclude-Modelele pot fi folosite pentru păstrarea legăturilor simbolice. Raportul Bugzilla 53959
- Câteodată, operațiile de copiere utilizând FileChannels NIO eșuează. Ant va încerca acum să utilizeze o operație de copiere bazată pe flux ca rezervă atunci când copia bazată pe Canal eșuează. Bugzilla Reports 53102 și 54397
- Javadoc.postProcessGeneratedJavadocs () eșuează pentru clasele care extind raportul Javadoc Bugzilla 56047
- TarInputStream va citi acum arhivele create de implementările de tip tar care codifică numerele mari prin faptul că nu adaugă o valoare NUL.
- metoda isExists () a URLResource a returnat false pozitive pentru URL-urile HTTP și FTP.
- Alte modificări:
- suport inițial pentru Java 1.9
- poate trece opțional System.in la procesul de la distanță Bugzilla Report 55393
- acceptă acum captarea erorii de ieșire a procesului executat și setarea unei proprietăți din codul de returnare. Raportul Bugzilla 48478
- are acum opțiunea de a eșua dacă javadoc emite avertismente. Raport Bugzilla 55015
- are un nou atribut de tip outputencoding. Raportul Bugzilla 39541
- se modifică la JUnitTestRunner și PlainJUnitResultFormatter pentru a face mai puține probabilități pentru OutOfMemoryErrors. Raport Bugzilla 45536
- se modifică la DOMElementWriter pentru a face mai puține probabilități pentru OutOfMemoryErrors. Raport Bugzilla 54147
- are un nou atribut binaryOutput care împiedică Ant să împartă ieșirea în linii. Acest lucru împiedică deteriorarea ieșirii binare, dar poate conduce la eroare, iar ieșirea normală este amestecată. Raportul Bugzilla 55667 Raportul Bugzilla 56156
- Elementele imbricate au acum un atribut opțional inputEncoding care poate fi utilizat pentru a specifica codificarea fișierelor citite care nu utilizează codificarea implicită a platformei. Raportul Bugzilla 56258
- Sarcina acceptă în mod explicit și acceptă codificarea conținutului gzip. Raportul Bugzilla 49453
- Un nou tip de colecție de resurse acționează ca o uniune a s și s care partajează aceeași configurație, dar au directoare de bază diferite. Raportul Bugzilla 48621
- are un atribut liniștit care face erorile jurnalului de sarcini numai atunci când este activată. GitHub Trage Cerere # 1
- are acum un atribut de fire care permite rularea testelor în mai multe fire. Raportul Bugzilla 55925
- adăugarea unei noi clase ProcessUtil care furnizează id-ul procesului procesului curent
- modificări pentru a permite rularea în paralel a testelor JUnit de Ant, prin folosirea directoarelor temporare unice
Ce este nou în versiunea 1.9.3:
- Buguri fixe:
- a înghițit codul de stare al sarcinilor imbricate.
- o condiție de cursă ar putea face ca sarcini de construcție paralelă să interfereze reciproc.
- încă nu funcționa corect când utilizați smtps.
- utilizând atribute aparținând domeniilor if și, dacă nu au făcut spații de nume, macrodef.
- Schimbările de sarcini ale antrenamentului 1.8 au întârziat exec la un crawl
- Apt nu este disponibil sub JDK 1.8
- Alte modificări:
- Documentație fixă pentru dacă / cu excepția atributelor. PR 55359.
- Înregistrările cu nume de linkuri lungi sunt tratate în același mod ca intrările cu nume lungi.
- Adăugarea atributului "skipNonTests" și sarcini care să permită sarcinilor să sări peste clase care nu conțin teste.
- acceptă acum un filtru imbricat de specificat.
- pot fi acum tipărite.
- construiți sistemul de instalare Mac OS X pkg
Portalul de e-mail
paramurile
Ce este nou în versiunea 1.9.1:
- nou dacă și dacă nu există spații de nume XML disponibile pentru toate sarcinile și elementele imbricate
- Extensiile Zip64 sunt dezactivate în mod implicit
- Încărcarea dependențelor externe fixate în sarcinile JUnit
- foile de stil predefinite JUnitreport compatibile cu JDK 1.7
- Recomandarea de a face upgrade la jsch 0.1.50 pentru utilizatorii sarcinilor ssh / scp în Java 1.7
- Alte corecții și îmbunătățiri documentate în WHATSNEW
Ce este nou în versiunea 1.8.4:
- negarea vectorului de atac în serviciul bzip2.
Ce este nou în versiunea 1.8.2:
Ce este nou în versiunea 1.7.1:
- performanță.
- Suportul Java 6 a fost îmbunătățit, iar JavaFX este susținut de sarcina de scriere.
Cerințe :
- Mediu de execuție Oracle Java Standard Edition
Comentariile nu a fost găsit