Warning: Undefined array key 1 in /DISK2/WWW/lipensky.cz/tomas/inc/auth.php on line 78 dev:maven [Tomas Lipensky - vedomostni koutek] Warning: Undefined array key "stylesheets" in /DISK2/WWW/lipensky.cz/tomas/inc/StyleUtils.php on line 102
Warning: Undefined array key -1 in /DISK2/WWW/lipensky.cz/tomas/inc/html.php on line 1458

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
dev:maven [2026/05/11 18:39]
tomas [Příklady]
dev:maven [2026/05/13 18:04] (current)
tomas [souborová struktura]
Line 2: Line 2:
 Maven je buildovací nástroj, který pracuje s [[https://maven.apache.org/guides/introduction/introduction-to-the-pom.html|pom.xml]] souborem, který definuje informace o produktu - název produktu, závislosti atd. Maven je buildovací nástroj, který pracuje s [[https://maven.apache.org/guides/introduction/introduction-to-the-pom.html|pom.xml]] souborem, který definuje informace o produktu - název produktu, závislosti atd.
  
 +
 +==== Odkazy ====
 [[https://maven.apache.org/guides/getting-started/maven-in-five-minutes.html]] ... maven za 5 minut - pěkný úvod\\ [[https://maven.apache.org/guides/getting-started/maven-in-five-minutes.html]] ... maven za 5 minut - pěkný úvod\\
 +[[https://maven.apache.org/plugins/index.html|pluginy]]\\
  
-=== Pluginy === +==== souborová struktura ==== 
-https://maven.apache.org/plugins/index.html+~/.m2/settings.xml ... společná nastavení pro všechny projekty, typicky hesla, cesty k repozitářům, [[https://maven.apache.org/guides/introduction/introduction-to-profiles.html|profily]] atd\\ 
 +~/.m2/[[https://maven.apache.org/guides/mini/guide-encryption.html|settings-security.xml]] ... heslo na šifrování hesel v settings.xml\\ 
 +~/.m2/repository ... cache stažených knihoven\\ 
 +pom.xml ... project object model - soubor v projektu, který definuje název balíčku, verzi, závislosti atd.\\
  
 ==== Syntaxe ==== ==== Syntaxe ====
 mvn -v ... verze Mavenu\\ mvn -v ... verze Mavenu\\
-mvn [[https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html|mezerou_oddělené_fáze]] [[https://maven.apache.org/ref/3.9.11/maven-embedder/cli.html|přepínače]] +mvn [[https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html|mezerou_oddělené_fáze/pluginy]] [[https://maven.apache.org/ref/3.9.11/maven-embedder/cli.html|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á\\ 
 +-s ~/.m2/settings.jine.xml ... použití jiného settings.xml s kredencema\\
  
 ==== Příklady ==== ==== Příklady ====
 mvn help:active-profiles ... informace o aktivních profilech\\ 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,prod ... to samé, jen se deaktivuje profil dev a aktivuje profil prod\\
-mvn help:active-profiles -P-dev ... to samé, jen se deaktivuje profil dev\\¨+
 mvn help:all-profiles ... seznam všech profilů\\ mvn help:all-profiles ... seznam všech profilů\\
 mvn dependency:tree -X ... seznam závislostí\\ mvn dependency:tree -X ... seznam závislostí\\
 mvn -help ... help\\ mvn -help ... help\\
 +mvn help:evaluate -Dexpression=project.version -q -DforceStdout ... ukáže aktuální verzi projektu z pom.xml\\
  
 +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 -DskipTests -DaltReleaseDeploymentRepository="jfrog::default::https://www.jfrog.io/artifactory/release" -DaltSnapshotDeploymentRepository="jfrog::default::https://www.jfrog.io/artifactory/snapshot" ... vyreleasování do jiného repozitáře, než je uvedeno v pom.xml\\
  
-mvn deploy:deploy-file -DgroupId=cz.lipensky.spotless \ +mvn deploy:deploy-file -DgroupId=cz.lipensky.spotless  
-    -DartifactId=spotless-eclipseformat\ +-DartifactId=spotless-eclipseformat 
-    -Dversion=1.0.0 \ +-Dversion=1.0.0 
-    -Dpackaging=xml \ +-Dpackaging=xml 
-    -Dfile=spotless.eclipseformat.xml \ +-Dfile=spotless.eclipseformat.xml 
-    -DgeneratePom=true \ +-DgeneratePom=true 
-    -DrepositoryId=maven-java-releases \ +-DrepositoryId=maven-java-releases  
-    -Durl=https://nexus.server/repository/maven-java-releases/ ... release do repozitáře z paramentrové řádky, -D jsou proměnné\\+-Durl=https://nexus.server/repository/maven-java-releases/ ... release do repozitáře z paramentrové řádky, -D jsou proměnné\\