This is an old revision of the document!


Table of Contents

Maven

Maven je buildovací nástroj, který pracuje s pom.xml souborem, který definuje informace o produktu - název produktu, závislosti atd.

https://maven.apache.org/guides/getting-started/maven-in-five-minutes.html … maven za 5 minut - pěkný úvod

Pluginy

Syntaxe

mvn -v … verze Mavenu
mvn mezerou_oddělené_fáze přepínače

Přepínače

-DskipTests … nebude dělat testy kódu, -D nastavuje systémové pproměnné Mavenu
-Dmaven.test.skip=true … to samé
-Daether.connector.https.securityMode=insecure … nekontroluje TLS certifikáty pro stahování artefaktů
-T 4 … builduje ve 4 vláknech
-X … debug mód, vypisuje hodně informací o tom, co dělá

Příklady

mvn help:active-profiles … informace o aktivních profilech
mvn help:active-profiles -P dev … to samé, ale zaktivuje profil dev
mvn help:active-profiles -P-dev … to samé, jen se deaktivuje profil dev
mvn help:all-profiles … seznam všech profilů
mvn dependency:tree -X … seznam závislostí
mvn -help … help

mvn deploy:deploy-file -Durl=https://maven.corp.com/repo -DrepositoryId=my.server -Dfile=your-artifact-1.0.jar … nahraje soubor do repozitáře
mvn deploy:deploy-file -Durl=https://maven.corp.com/repo -DrepositoryId=my.server -Dfile=your-artifact-1.0.jar -Daether.connector.https.securityMode=insecure … nekontroluje certifikáty

mvn deploy:deploy-file -DgroupId=cz.lipensky.spotless -DartifactId=spotless-eclipseformat -Dversion=1.0.0 -Dpackaging=xml -Dfile=spotless.eclipseformat.xml -DgeneratePom=true -DrepositoryId=maven-java-releases -Durl=https://nexus.server/repository/maven-java-releases/ … release do repozitáře z paramentrové řádky, -D jsou proměnné