Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Maven és Ant Build eszközök bemutatása

Hasonló előadás


Az előadások a következő témára: "Maven és Ant Build eszközök bemutatása"— Előadás másolata:

1 Maven és Ant Build eszközök bemutatása

2 Apache Ant Inkább toolbox mint Framework, 100% Java-ban íródott
Elődjének a Make-t tekinthetjük Apache Software Foundation egyik projektje , nyílt forráskódú szoftver A Build folyamat és függőségek leírásához build.xml fájlt használja Az Ant egy egyszerű platformfüggetlen eszköznek készült a Tomcat buildeléséhez Semmilyen konvenciót nem tartalmaz egy projekt könyvtárstruktúrájára nézve, meg kell neki mondani, hogy hol találja a forráskódot és, hogy hová tegye majd a bájtkódot Az Ant Procedurális, pontosan meg kell neki mondani, hogy mit és mikor csináljon (compile, copy, compress) és a sorrendet is meg kell határozni Nincs benne Lifecycle

3 build.xml

4 Egyik nagy előnye a Make-hez képest a Hordozhatóság
Egy célt leíró akció shell parancsa Make-ben: Ant build fájlban az akciót leíró task:

5 Maven Egy Framework, ami nem csak a Buildelést egyszerűsíti le, hanem szoftver projektek menedzselésére is alkalmas POM.xml (Project Object Model) –be van leírva egy buildelendő projekt és annak függőségeit Mavenben vannak konvenciók a könyvtárstruktúrára nézve. (ha ezeket betartjuk nem kell feltüntetni a POM.xml-ben a forráskód illetve bájtkód helyét) Maven deklaratatív, pom.xml-t kell létrehozni és a forráskódot a buildelés folyamatáról a Maven gondoskodik Van LifeCycle (életciklus) a Mavenben

6 Maven goal (cél), Maven phase, Maven Lifecycle
Az archetype :generate is egy goal (cél) Az archetype a plugin, ami tartalmazza a generate célt. A plugin tkpen, goal(cél)-ok gyűjteménye Maven Phase: például a package, install, deploy A Phase egy lépés a build folyamat életciklusában A Phase goal-ok,ra van leképezve Maven Lifecycle phasek rendezett szekvenciája

7 Maven Lifecyle (életciklus)
Alapötlet az, hogy az életciklusban phasek (compile, test, package) vannak és, hogy minden phase végrehajtásához minden azt megelőző célnak sikeresen végre kell hajtódnia. Ezt a phasek futtatásakor a Maven ellenőrzi. Maven projekt főbb életciklus fázisai: mvn install futtatásakor az összes előzőt futtatja a maven és ha a package nem futott le akkor az install sem fog

8 Maven pom.xml file project It is the root element of pom.xml file.
modelVersion It is the sub element of project. It specifies the modelVersion. It should be set to groupId It is the sub element of project. It specifies the id for the project group. artifactId It is the sub element of project. It specifies the id for the artifact (project). An artifact is something that is either produced or used by a project. Examples of artifacts produced by Maven for a project include: JARs, source and binary distributions, and WARs. version It is the sub element of project. It specifies the version of the artifact under given group. Element Description packaging defines packaging type such as jar, war etc. name defines name of the maven project. url defines url of the project. dependencies defines dependencies for this project. dependency defines a dependency. It is used inside dependencies. scope defines scope for this maven project. It can be compile, provided, runtime, test and system.

9 Egyszerű java-s alkalmazás generálása

10 Maven Repository A Maven a repositorykban keresi a függőségeket
Local Reopistory: %USER_HOME%/.m2/repository Central Repository: apache maven community Remote Repository Olyan jar-okhoz, amik nincsenek benn a central repositoryban

11 Különbségek Maven és Ant között
Ant doesn't has formal conventions, so we need to provide information of the project structure in build.xml file. Maven has a convention to place source code, compiled code etc. So we don't need to provide information about the project structure in pom.xml file. Ant is procedural, you need to provide information about what to do and when to do through code. You need to provide order. Maven is declarative, everything you define in the pom.xml file. There is no life cycle in Ant. There is life cycle in Maven. It is a tool box. It is a framework. It is mainly a build tool. It is mainly a project management tool. The ant scripts are not reusable. The maven plugins are reusable. It is less preferred than Maven. It is more preferred than Ant.

12

13 Köszönöm a Figyelmet!


Letölteni ppt "Maven és Ant Build eszközök bemutatása"

Hasonló előadás


Google Hirdetések