ponedjeljak, 9. siječnja 2012.

Maven - šta, kako i zašto?

Apache Maven je ... Ove tri točkice bi trebale biti nastavak definicije na hrvatskom jeziku ali pošto neku pametnu nisam našao, engleska će biti i više nego dovoljna. Uostalom netko tko ikad želi raditi bilo šta vezano uz programiranje a aktivno se ne koristi engleskim jezikom je poprilično osuđen na propast :D
Uglavnom prenosim definiciju prenesenu iz engleske verzije Wikipedije:

"Maven is a buil automation and softwere comprehension tool..."
Detaljniji opis se može naći ovdje: http://en.wikipedia.org/wiki/Apache_Maven

Zavisno od autora do autora, članka do članka, knjige do knjige postoji varijacija o broju dijelova "lifecyle" kod razvoja s Maven-om. Vodeći se knjigom Apache Maven 3 Cookbook od Pack Publishinga koju obavezno svakom preporučujem! Knjiga u svojih 200+ stranica objašnjava sve što će vam ikad biti potrebno znati o radu s Maven-om. Uglavnom default lifecycle prema toj knjizi:

  • Validate - validates that all project information is available and correct
  • Compile - compiles the source code
  • Test - runs unit tests within a suitable framework
  • Package - packages the compiled code in its distribution format
  • Integration-test - processes the package in the integration-test enviroment
  • Verify - runs checks to verify that the package is valid
  • Install - installs the package in the local repository
  • Deploy - installs the final package in a remote repository
Ono što obavezno treba imati na umu je da kada izvodimo bilo koju fazu builda, sve faze koje se nalaze prije nje će također biti izvršene. Tako npr. ako odaberemo mvn package - prije package biti će izvršeno validate, compile, test i tek onda package. To je ujedini i jedna od osnovih prednosti Mavena. Ako radite aplikaciju i prije deploya naravno treba provjeriti dali sa zadnjim promjenama nije nešto poremećeno, odaberemo mvn deploy i Maven nam izvrši sve build faze, što znači i naše testove, pa ne moramo to zasebno raditi.
Koliko god Eclipse IDE bio dobar on to ne može! Ali zato postoji inegracija Mavena u Eclipse (ali o tome malo kasnije).
Ovo je nešto ukratko što je potrebno znati prije nego se krene, ali ako niste došli ovdje s točnim znanjem šta je Maven točno, vjerovatno vam nije još sve jasno. Ali kada osoba odradi prvi primjer sve će mu biti jasno, a da bi to mogli napraviti, potrebno ga je instalirati.

Postupak instalacije:

  1.  http://maven.apache.org/download.html sa ovog linka skine se zip file i odapkira se negdje na hardu (u mom primjeru D:\Java\apache-maven-3.0.3)
  2. Još nam preostaje jedna stvar prije nego počnemo raditi, a to je postavljanje sistemskih varijabli za maven. Ja koristim Windows 7, postupak za Linux je malo drugačiji i radi se isključivo iz terminala, vrlo lagano i provjereno s moje strane u Ubuntu. Jedina stvar koju trebate znati je gdje se odzipali maven ( u mom slučaju home/zoki/java/apache-maven-3.0.3). Otvorite Shell i utipkajte sljedeće: export M2_HOME=/home/zoki//java/apache-maven-3.0.3 te stisnite enter, zatim utipkajte sljedeće export PATH=${PATH}:${M2_HOME}/bin
  3. Ide se na Start, te lijevi klik na MyComputer pa Properties -> Advanced System Settings
  4. Nakon toga u Advance tabu se klikne na Enviroment Variables
  5. I sada "najteži dio" - Pod System variables kliknite na New i unesite sljedeće: Pod Variable name: MAVEN_HOME , a pod Variable value: D:\Java\apache-maven-3.0.3 (lokacija gdje ste odzipali)
  6. Pod istim System variable nađite varijablu Path te dodajte %MAVEN_HOME%\bin . Varijeble odvajate s ;
  7. Treba imati na umu da bi Maven radio da treba imati i definiranu varijablu JAVA_HOME (ali to ću pretpostaviti da imate)
  8. Nisam radio screen shotove ali ako imate poteškoća progledajte ovo: http://www.mkyong.com/maven/how-to-install-maven-in-windows/
Pošto je sve instalirano, potrebno je provjeriti dali je sve ispravno instalirano. Pokrenite Command Promt i utipkajte sljedeće (nije bitno u kojem se folderu nalazite):  mvn --version
Ako je sve instalirano dobit ćete nešto slično ovome kao rezultat:

C:\>mvn --version
Apache Maven 3.0.3 (r1075438; 2011-02-28 18:31:09+0100)
Maven home: D:\Java\apache-maven-3.0.3\bin\..
Java version: 1.7.0_02, vendor: Oracle Corporation
Java home: C:\Program Files\Java\jdk1.7.0_02\jre
Default locale: en_US, platform encoding: Cp1250
OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"

Ako niste dobili to, to znači da niste dobro napravili sistemske varijable.
Pošto ovo pišem na laptopu na kojem nemam nikakvog programa za obradu sliku (za sada) toliko od mene za ovaj post.Sljedeće što treba napraviti je zapravo i napraviti web projekt pomoću mavena ali to u sljedećem postu



Nema komentara:

Objavi komentar