Proiecte de automatizare folosind furnica apache

Nu crezi că e de ajuns pentru a îndeplini sarcinile care pot fi automatizate? Astăzi vom face asta! O să-ți arăt cum să automatizeze anumite procese. În această lecție veți învăța cum să lucreze cu Apache Ant.

Intro: Ce este Ant?

Ant permite mod incredibil de ușor de a automatiza sarcinile.

Ant - este un software specializat, care este proiectat pentru a automatiza software-ul. Firma sa produs Apache (da, același care a creat serverul Apache), iar obiectivul său principal a fost de a crea aplicații în Java. Când scrie software-ul (sau aplicație web, site-ul), efectuați aceeași operație la începutul noului proiect. Uneori, este nevoie de o cantitate impresionanta de timp, care ar putea fi cheltuite pe altceva. Ant vă permite să efectuați mai multe sarcini, cu un cuplu de comenzi pe care trebuie să tastați în terminal.

Gata? Ei bine, atunci să mergem!

Pasul 0: Crearea unui proiect

Pasul 1: Instalarea Ant

Instalarea Ant poate fi destul de dificilă. Dar, datorită unei fișiere speciale de instalare pentru Windows și procesul de instalare Mac devine mult mai ușor. Dacă folosiți Linux, tu, de asemenea, puteți instala cu ușurință Ant în sine, deși va avea un pic de Googling.

Dacă sunteți un utilizator de Mac, probabil ai deja instalat Ant; Cu toate acestea, unele sarcini avansate (de exemplu, cum ar fi lucrul cu FTP) nu va lucra pentru tine. Pentru a face acest lucru, trebuie să instalați cea mai recentă versiune a produsului.

Înainte de a începe, aș dori să-ți arăt instrucțiuni complete, care oferă Apache în sine: le puteți găsi aici. (De fapt, acesta este intregul director Ant, nu am putut scrie mai bine decât cel care este gata pe pagina pe care o am, puteți găsi secțiunea „Instalarea Apache Ant“ ..) Tot ce vă pot spune mai jos, puteți găsi pe pagina pe care le-am dat (și, desigur, chiar mai mult), dar versiunea mea este mai potrivit pentru web-developeri.

În primul rând, avem nevoie pentru a determina dacă toate pachetele Java sunt instalate. Indiferent dacă utilizați Windows sau Mac, va trebui să instalați kitul de dezvoltare Java (JDK) - versiunea nu mai mică de 1,4. Îl puteți descărca de aici. Dacă nu sunteți sigur ce versiune de JDK ați instalat, rulați comanda java -version într-un terminal prompt sau comandă. După cum am înțeles, versiunea JDK coincide cu versiunea Java, care este pe computer.

Acum, să descărcați cea mai recentă versiune de Ant. Puteți descărca aici (desigur, puteți descărca codul de aici și compilați-l singur, dacă doriți):

După ce ați descărcat și despachetat totul, ai nevoie pentru a începe instalarea. Asta ar trebui să obțineți:

Proiecte de automatizare folosind furnica apache

Primii pași ai instalației depinde de platforma pe care îl utilizați. Să începem cu pașii care sunt în așteptare pentru tine pe Windows:

privind pașii de instalare pentru Windows

În primul rând, trebuie să decidă cu privire la locul unde se va instala Ant. Am ales C: \ furnică, dar puteți selecta o altă locație. Dacă repetați pașii pentru mine, creați dosarul și pentru a muta directorul bin, lib, etc și în ea. De asemenea, aici trebuie să se mute fetch.xml și get-m2.xml.

După ce sa terminat, trebuie să setați unele variabile de mediu:

  • Veți avea nevoie de o variabila numita ANT_HOME; Valoarea variabilei trebuie să se potrivească cu calea către cele mai Ant. De exemplu: C: \ ant.
  • Apoi, aveți nevoie de un JAVA_HOME variabilă; acesta poate fi deja prezentă în sistemul dvs., dacă nu, atunci trebuie să se refere la Java. În cazul meu, este C: Files \ Program \ Java \ jdk1.6.0_18.
  • Apoi, trebuie să modificați calea variabilă. Acesta conține o listă de fișiere și foldere, care sunt conectate, atunci când lucrați cu linia de comandă. NU totul este înlocuit; trebuie doar să adăugați;% ANT_HOME% \ bin până la sfârșitul tuturor. Nu uita virgulă; Acesta servește ca un separator în listă. Probabil deja ghicit că%% ANT_HOME - este variabila pe care am creat anterior.

Acum aveți Ant instalat cu succes pe Windows dumneavoastră! Mai mult, există câțiva pași importanți care au nevoie pentru a merge.

Pentru a finaliza instalarea, trebuie să faceți următoarele. Există mai multe componente care nu sunt instalate în mod implicit furnică, dar care vor fi necesare în proiectul nostru. Să-i stabilească, de asemenea.

Pentru a începe cu, care se va deschide un prompt de comandă sau terminal și pentru a trece pe la directorul pe care tocmai ați creat-o (Ant). Acum vom avea de a face cu fetch.xml fișierul. Acum, executați următoarea comandă:

Această comandă va începe procesul de descărcare și instalare a unor componente; poate dura ceva timp.

Acum Ant instalat și pe deplin operațional.

Pasul 2: Crearea unui fișier build.xml

Ant folosește un fișier special XML pentru a stoca sarcini care se referă la un anumit proiect.

Ant folosește un fișier XML pentru a stoca sarcini pentru proiectul curent; atunci când sunt în acest director prin linia de comandă, aveți posibilitatea să executați o comandă care seamănă cu furnica următoarea TASK_NAME_HERE, și el va găsi sarcina corespunzătoare în fișierul XML.

Dacă nu sunteți familiarizați cu XML, nu vă faceți griji. XML standuri pentru eXtensible Markup Language, și este foarte similar cu HTML. În folosit, de asemenea, etichetele și atributele. El este, de asemenea, foarte asemanatoare cu XHTML, în limitele sale stricte: toate etichetele și atributele trebuie să fie scrise cu majuscule, valorile sunt plasate între ghilimele, aveți nevoie de un DOCTYPE, și multe altele. Nu vă faceți griji, totul invata repede.

Un fișier XML care utilizează un implicit furnică ar trebui să fie numit build.xml; Ai nevoie pentru a muta acest fișier la proiect.

Deci, ce ar trebui să fie stocate în fișierul XML? În primul rând, aici este:

Nu este similar cu HTML? Prima linie - este doctype XML. În continuare, ar trebui să fie elementul de bază, care, în acest caz, se numește un proiect. Am adăugat la un număr de atribute: nume, care va explica ce fel de sarcini va fi; și implicit, care conține o sarcină implicită.

Acum, voi arăta sarcini de lansare. De exemplu, am creat o sarcină numită call_mom. Pentru a rula, trebuie să faceți următoarele:

Dacă va rula furnica pentru proiectul dumneavoastră, atunci se execută sarcina, care este implicit. În cazul nostru, ne-am atribuit sarcina sarcina Inițializare în mod implicit.

Aceste două intrări sunt echivalente.

Acum, că avem fișierul build.xml, putem crea prima sarcină.

Pasul 3: Scrierea prima sarcină

Obiective reprezintă ținte tag-ul, care sunt stocate în fișierul build.xml. Ei bine, ceva de genul:

Adăugați acest la fișierul build.xml și rulați call_mom furnica prin intermediul consolei. Ca urmare, ar trebui să obțineți ceva de genul:

La ieșirea Ant vă va spune rezultatele a ceea ce tocmai a făcut. Vei primi informații cu privire la executarea fiecărei sarcini. După cum puteți vedea, am cauzat problema de ecou, ​​care ne va imprima ceea ce-i da.

Dar cum aș putea să cred că ecou - este sarcina? Ei bine, aici puteți obține o listă cu toate sarcinile încorporate. Aceeași sarcină poate fi făcută în diferite moduri. De exemplu, același lucru pe care îl putem face după cum urmează: . Și acest lucru nu este limita.

Acum, că ați înțeles principiile de bază ale Ant, putem trece la unele proprietăți.

Pasul 4: Crearea unui fișier de proprietăți

Ant are, de asemenea, proprietăți care sunt foarte familiare să semene cu variabilele pe care le.

Puteți face, de asemenea, toate proprietățile într-un fișier separat, și apoi doar de import. Asta vom face. Acest lucru ne va ajuta să creați o problemă reală:

Problema noastră ne-am dat numele get_properties. Se compune din două etape: în primul rând, vom folosi proprietatea pentru sarcina de a importa fișiere (mulțumiri atribut fișier). După aceea, vom imprima mesajul că importul a fost de succes. Este foarte simplu.

S-ar putea crede că ne complica lucrurile, pentru că numele variabilelor sunt mult mai mult decât valorile lor. Acest lucru este așa, dar ne oferă unele mulțime de oportunități helluva pe care le putem utiliza în build.xml.

Pasul 5: Crearea unui cuplu mai multe probleme

Ei bine, glumele deoparte. Acum este timpul pentru a scrie unele probleme serioase pentru fișierul nostru build.xml.

Aici este o listă a ceea ce vrem să facem:

Pentru toate acestea, vom folosi mai multe tactici diferite. Este doar bun Ant.

Să începem cu sarcina de compilare; Provocarea este de a concatena mai multe fișiere într-una singură. Pentru aceasta Ant conține o concat de comandă.

Am sunat la concat_css sarcina. La interior, vom rula CONCAT comanda. După cum puteți vedea, un singur fișier este generat (destfile) vor fi create în active / directorul style.css. Veți observa, de asemenea, că am folosi assets_dir de proprietate, care se înlocuiește cu valoarea de care aveți nevoie de noi. Această proprietate trebuie să fie închise între paranteze și în fața lor, a pus un semn dolar.

Și aici au puțin pentru că pokoldovat Ant nu este furnizată în această sarcină. Cu toate acestea, Ant susține comanda java pentru fișierele cu extensia .jar. Acest lucru se datorează faptului că știrile de super pentru noi Compresor YUI este disponibil pentru noi ca un fișier .jar. Îl puteți descărca de aici. Descărcați-l și redenumiți-l, dacă doriți. L-am ținut în MY_USER_FOLDER / bin / directorul yui.jar.

Aici vom folosi comanda java. Acest lucru este foarte similar cu echipa pe care le-am scris pe linia de comandă. atribut Jar se referă la fișierul .jar. Dacă atributul furcii este adevărat, borcanul va începe să facă treaba. Apoi, într-un bloc de java, definim câteva dintre argumentele. ne-ar fi făcut în linia de comandă, astfel încât input.file output.file -o. Există aproape la fel.

În cazul în care se depune de proprietate? De aici:

Este sarcina noastră de a comprima CSS. În primul rând, vă rugăm să rețineți că unitatea țintă cuprinde un al doilea atribut: depinde. Probabil că știa deja totul. Sarcina compress_css concat_css depinde de sarcina. De aceea, noi o numim mai întâi. Astfel, putem apela compress_css, care provoacă în primul rând concat_css.

Ce fac acum? Realizăm sarcina antcall, care, la rândul său, va provoca o altă problemă, conținute în dosarul build.xml - în special, compresa sarcina. În interior putem specifica cât mai mulți parametri, după cum doriți, fiecare dintre acestea poate avea un nume și o valoare. Acest lucru este foarte similar cu un apel de funcție.

Nu uita, totul depinde de concat_js.

Am schimbat mingea rulare

Să ne întoarcem la bun început - proiect de unitate - ne-am atribuit sarcina inițializează sarcina implicită. Noi nu am creat această problemă. Aici este:

Această sarcină depinde de celelalte două (pe care îl avem încă să facă acest lucru); lista de sarcini, pur și simplu separate prin virgula.

Curat după ei înșiși

Și ce despre problema clean_up? Este foarte simplu:

Această sarcină elimină directorul active. Nu este sarcina foarte necesară. L-am creat doar pentru a comanda.

proiectul Se încarcă

Să creați încă o problemă; vrem să încărcați proiectul nostru la server. Datorita comenzii FTP, acest lucru se face foarte simplu.

Vom numi această problemă upload_files, și va depinde de inițializează. Aici vom folosi sarcina FTP. După cum puteți vedea, toate datele necesare sunt stocate în atribute. Dacă lucrați cu clienții FTP, ar trebui să fie toate familiare.

După ce executați această sarcină, este de a încărca toate fișierele pe server!

Concluzie: este necesar să se utilizeze

Înainte de a finaliza această lecție, aș dori să spun câteva cuvinte:

  • Rețineți că am folosi pentru a inițializa sarcina de asteptare alte sarcini. În acest caz, mai mult și mai divizată semantic.
  • Ceea ce v-am arătat, este doar un pic Prichindelul de toate oportunitățile Ant. Dacă veți continua să dezvolte acest instrument, veți ști că aceleași sarcini pot fi efectuate în diferite moduri (în acest articol a fost un exemplu pentru problema ecou). Că, așa cum am făcut - „! Nu este singura cale“
  • Ar fi rece pentru a face rost de problema, care va analiza HTML, găsiți foile de stil și script-uri, plasându-le în ordinea corectă. Cu toate acestea, din moment ce furnica nu a fost creat pentru dezvoltatorii web ale unor astfel de posibilități, el nu a furnizat. Trebuie să scrie antlib speciale (expansiune) în Java.

Asta este! Sper că am învățat ceva, iar această cunoaștere va fi de folos în viitor. Vă mulțumesc pentru atenție!

Proiecte de automatizare folosind furnica apache

Prin obținerea de informații de la două canale (vedere si auz) eficacitatea instruirii de învățare departe superioare de cărți. O temele pentru acasă și teste on-line vă va permite să se gândească în mod constant în limba țintă și imediat verifica cunoștințele!

Proiecte de automatizare folosind furnica apache

Proiecte de automatizare folosind furnica apache

Dacă doriți o lungă perioadă de timp pentru a studia modul în HTML, mi-ai, pentru ai vesti bune!

Proiecte de automatizare folosind furnica apache

Dacă ați învățat deja HTML și doresc să avanseze, următorul pas va fi de a studia tehnologia CSS.

Proiecte de automatizare folosind furnica apache

Dacă doriți să înțeleagă conceptele de domeniu si hosting, învață cum să creeze o bază de date, încărca fișiere pe un site web prin intermediul unui server FTP, crea subdomenii, configurați cutiile poștale pentru site-ul și să monitorizeze participarea, acest curs este conceput special pentru tine!