2006/10/15

Maven2

Mit akarok csinalni egy projekttel?

  • Létrehozni
  • Librarykat hozzáadni
  • Megírni a kódot
  • Buildelni
  • Tesztelni
  • Futtatni
  • Csomagolni
  • Publikálni

Akkor nézzük mit ad nekem ehhez Maven, es mit a hagyományos IDE alapú fejlesztés (nálam NetBeans)

Létrehozás: Mivel csak standalone Java programot csináltam nem volt szükseg bonyolult archetypokra. Netbeans kreálta alap pont olyan jó volt mint a Maven-es.

Libraryk: Az nagyon okos, hogy a Maven egy helyen tárolja a függősegeket (azaz csak egy helyen kell meglennie pl. a log4j.jar-nak), de ugyanezt az IDE-k is tudjak. Igaz, itt fontos, hogy az összes hasznalt gepen ugyanolyan nevű shortcutokra legyen beallitva a jar file. Ha több gépen is fejlesztjük az egy projektet nagyon hasznos lehet, hogy a Maven library hivatkozás globalis, tehat ha beirjuk mi a függőség, bárhol is vagyunk letölti neküknk uazt a jart.

Megírni a kódot:Sajnos ezt is kell, és hiába csinál egy csomó mindent meg helyettem a Maven, ha a programozást segítő kiegészít funkciók közben meghallnak az IDE-ben, akkor nem fog érdekelni a dolog.

Buildelni/tesztelni: Ez mindkettőben ugyanaz az élmény. Bár Buildelni Netbeansben csak a saját ant build szkriptje alapjan sokkal gyorsabb, mint meven ide-n keresztul.

Futtatni: Ezt Mavenben vagy úgy eldugták, hogy nem találtam, vagy nincs. Ideből röhögve.

Csomagolni: Netbeans alapból jar csomagot állít elő, a dist könyvtárba. Maven plugin némi szöszölés után sokkal jobban testreszaható. Bár azt hiszem ant alapon a NetBeans-et is meg lehetne tanítani okosabb dolgokra.

Publikálás: Ebben egyértelműen a Maven a nyerő, site-ot csinál, reportokat generál.

Szóval itt tartok. Próbáltam a mevenide-t NetBeans-hez, nagyon szép, csak pont a finisben hasal el. Pl. ha Maven projektet nyitok nem használhatom a persistence-s varázslókat. EJB3-mal meg se mertem próbálni. Ha csak command line-ból használok Maven-t, és fejlesztéshez NetBeans-t akkor is iszonyú szívás a dolog.

A Maven a library kezelésben nagyon erős, meg a site deployban, de emellett hiába van róla ingyenes könyv, meg a honlapon elég sok guide nagyon nehéz eligazodni a doksikban, és advanced dolgok már nincsenek nagyon leírva. A library kezelést lehet mással is helyettesíteni (pl. Ivy), de a report generálás azért hiányozni fog.


4 megjegyzés:

Kocka írta...

noooo!!! azert nem szep osszehasonlitani egy build toolt egy idevel :-D

Probald ki talan a mevenide pluginjat a netbeans-hoz, az kiralysag. + continuum support is van benne

elek írta...

Akkor fogalmazok mashogy: IDE-t hasznalni a fejleszteshez szamomra megkerulhetetlen. Ket dolog a kerdes:

1. a maven milyen feladatokat tud atvenni az IDEtol amit sokkal jobban megold o.
2. hogy lehet osszegyogyitani a kettot, hogy az IDE tovabbra is ugyanazt a funkcionalitast adja.

Az elsore kb. a dependency kezeles es a deploy/site generalas a valasz.

A masodikra eppen a mevenide-t probaltam, es irtam is, hogy epp az volt a baj, hogy habar nagyon sok dolgot nagyon szepen megcsinal, egyes funkciok (pl kod generalasok, editorok) nem mukodtek a Mevenidevel. (pl. JPA kezeles).

A mevenide/continuum plugin viszont mevenide nelkul is megy es tenyleg jol nez ki.

Kocka írta...

jovan meg van bocsajtva! :)

amugy korrekt, kicsi rovid gyorsan osszebaszom projectekhez senkinek nem javasolnam hogy barmilyen build toolt hasznaljon, legyen eleg amit az ide ad, a build tool haszna mashol jon be.

Kocka írta...

marminthogy a konkulzio korrekt

tudok konzisztensen kommentezni, az a lenyeg :)

en is most kicsit grails-szel takolok. mer gyors, es ennyi.