Útmutató a Maven archetípusához
1. Áttekintés
A Maven archetípus egyfajta projekt absztrakciója, amely egy konkrét, testreszabott Maven-projektté alakítható. Röviden, ez egy sablon projekt sablon, amelyből más projektek jönnek létre.
Az archetípusok használatának legfőbb előnye a projektfejlesztés szabványosítása, és lehetővé teszi a fejlesztők számára, hogy könnyen kövessék a bevált gyakorlatokat, miközben gyorsabban indítják a projekteket.
Ebben az oktatóanyagban megvizsgáljuk, hogyan hozhatunk létre egyedi archetípust, majd hogyan használhatjuk Maven projekt létrehozására a maven-archetype-plugin.
2. Maven archetípus-leíró
A Maven archetípus leíró az archetípus projekt szíve. Ez egy XML fájl archetype-metadata.xml és a META-INF / maven korsó könyvtár.
Az archetípusok metaadatainak leírására használják:
bar src / main / java ** / *. java
A szükségesTulajdonságok címke a tulajdonságok biztosítására szolgál a projektgenerálás során. Ezért arra kérünk, hogy adjunk meg értékeket számukra, az alapértelmezett érték elfogadása mellett.
fileSets, másrészt arra használják, hogy konfigurálják, mely erőforrásokat másolják be a konkrétan létrehozott projektbe. A szűrt fájl azt jelenti, hogy a helyőrzőket a megadott értékekkel helyettesítik a létrehozási folyamat során.
És a használatával becsomagolva = ”true” ban,-ben fileSet, azt mondjuk, hogy a kiválasztott fájlok hozzá lesznek adva a csomag ingatlan.
Ha több modulos projektet akarunk létrehozni, akkor a címkét modulok segíthet a létrehozott projekt összes moduljának konfigurálásában.
Ne feledje, hogy ez a fájl a 2. és magasabb archetípusról szól. Az 1.0.x verzióban a fájlt most hívták meg archetype.xml és más felépítésű volt.
További információért feltétlenül nézze meg a hivatalos Apache-dokumentumokat.
3. Hogyan készítsünk archetípust
Az archetípus egy normális Maven-projekt, a következő extra tartalommal:
- src / main / resources / archetype-resources az a sablon, amelyből az erőforrásokat átmásolják az újonnan létrehozott projektbe
- src / main / resources / META-INF / maven / archetype-metadata.xml: az archetípusok metaadatainak leírására használt leíró
Az archetípus manuális létrehozásához kezdhetünk egy újonnan létrehozott Maven-projekttel, majd hozzáadhatjuk a fent említett erőforrásokat.
Vagy létrehozhatjuk a archetype-maven-plugin, majd testre szabhatja a archetípus-források könyvtár és archetype-metadata.xml fájl.
Az archetípus előállításához használhatjuk:
mvn archetípus: generál -B -DarchetypeArtifactId = maven-archetype-archetype \ -DarchetypeGroupId = maven-archetype \ -DgroupId = com.baeldung \ -DartifactId = test-archetype
Az archetípust létrehozhatjuk egy meglévő Maven projektből is:
mvn archetípus: projektből létrehozás
Ben keletkezett target / generált források / archetípus, használatra kész.
Nem számít, hogyan hoztuk létre az archetípust, a következő struktúrával fogunk rendelkezni:
archetípus-gyökér / ├── pom.xml └── src └── fő ├── java └── források ├── archetípus-források │ ├── pom.xml │ └── src └── META-INF └── maven └── archetype-metadata.xml
Most megkezdhetjük archetípusunk építését azáltal, hogy erőforrásokat helyezünk a archetípus-források könyvtárba és konfigurálja őket a archetype-metadata.xml fájl.
4. Az archetípus építése
Most készen állunk archetípusunk testreszabására. Ennek a folyamatnak a legfontosabb részeként bemutatjuk egy egyszerű Maven archetípus létrehozását a RESTful alkalmazás generálásához a JAX-RS 2.1 alapján.
Nevezzük csak maven-archetípus.
4.1. Archetípus csomagolás
Kezdjük a pom.xml alatt található archetípus projekt a maven-archetípus könyvtár:
maven-archetípus
Ez a fajta csomagolás a archetípus-csomagolás kiterjesztés:
org.apache.maven.archetype archetípus-csomagolás 3.0.1
4.2. A pom.xml
Most hozzunk létre egy pom.xml fájl alatt található archetípus-források Könyvtár:
$ {groupId} $ {artifactId} $ {version} war javax.ws.rs javax.ws.rs-api 2.1 biztosított
Ahogy látjuk, groupId, artefactId és változat paraméterezettek. Ebből az archetípusból egy új projekt létrehozása során lecserélik őket.
Mindent be tudunk tenni a létrehozott projekt számára, például a függőségeket és a beépülő modulokat pom.xml. Itt felvettük a JAX RS függőséget, mivel az archetípust a RESTful alapú alkalmazások előállításához használják.
4.3. Szükséges erőforrások hozzáadása
Ezután hozzáadhatunk néhány Java-kódot alkalmazásunkhoz archetype-resources / src / main / java.
Osztály a JAX-RS alkalmazás konfigurálásához:
csomag $ {csomag}; // importálja az @ApplicationPath ("$ {app-path}") nyilvános osztályt Az AppConfig kiterjeszti az alkalmazást {}
És egy ping erőforrás osztálya:
@Path ("ping") nyilvános osztály PingResource {// ...}
Végül tegye a szerver konfigurációs fájlt, server.xml, ban ben archetype-resources / src / main / config / liberty.
4.4. Metaadatok beállítása
Az összes szükséges erőforrás hozzáadása után most konfigurálhatjuk, melyiket másoljuk át a generálás során a archetype-metadata.xml fájl.
Elmondhatjuk archetípusunknak, hogy az összes Java forrásfájlt szeretnénk másolni:
src / main / java ** / *. java src / main / config / liberty server.xml
Itt minden Java fájlt szeretnénk src / main / java könyvtár, és a server.xml fájlt src / main / config / liberty, lemásolni.
4.5. Az archetípus telepítése
Most, hogy befejeztük az egészet, a parancs meghívásával telepíthetjük az archetípust:
mvn install
Ekkor az archetípust regisztrálják a fájlban archetype-catalog.xml, a Maven helyi tárolójában található, és ezért használatra kész.
5. A telepített archetípus használata
A maven-archetype-plugin lehetővé teszi a felhasználó számára, hogy Maven projektet hozzon létre a generál cél és a meglévő archetípus. Ha további információt szeretne erről a bővítményről, keresse fel a kezdőlapot.
Ez a parancs ezt a bővítményt használja egy Maven projekt előállítására archetípusunkból:
mvn archetípus: generál -DarchetypeGroupId = com.baeldung.archetypes -DarchetypeArtifactId = maven-archetype -DarchetypeVersion = 1.0-SNAPSHOT -DgroupId = com.baeldung.restful -DartifactId = cool-jaxrs-sample -Dversion = 1.0
Ezután argumentumként át kell adnunk archetípusunk GAV-ját a maven-archetype-plugin: generál cél. Átadhatjuk a generálni kívánt konkrét projekt GAV-ját is, különben interaktív módban tudjuk biztosítani őket.
A beton hűvös-üvegek-minta generált projekt tehát változtatások nélkül futtatható. Tehát futtathatjuk a parancs meghívásával:
mvn package liberty: futtatás
Ezután hozzáférhetünk ehhez az URL-hez:
// localhost: 9080 / cool-jaxrs-sample // ping
6. Következtetés
Ebben a cikkben bemutattuk, hogyan kell felépíteni és használni a Maven archetípust.
Bemutattuk, hogyan lehet létrehozni az archetípust, majd hogyan kell konfigurálni a sablon erőforrásait a archetype-metadata.xml fájl.
A kód, mint általában, a Github oldalon található.