7.1 Variabler i Maven - egenskaper
Vanligt förekommande parametrar Maven låter dig lägga in variabler. Detta är mycket användbart när du behöver matcha parametrarna i olika delar av pom-filen. Till exempel kan du lägga Java-versionen, biblioteksversioner, sökvägar till vissa resurser i en variabel.
För detta finns det ett särskilt avsnitt i , pom.xml – <properties>
där variabler deklareras. Variabelns allmänna form är följande:
<variable-name> _ _ _ _meaning< / variable name > _
Exempel:
<properties>
<junit.version>5.2</junit.version>
<project.artifactId>new-app</project.artifactId>
<maven.compiler.source>1.13</maven.compiler.source>
<maven.compiler.target>1.15</maven.compiler.target>
</properties>
Variabler nås med en annan syntax:
$ { variable -name } _
Där sådan kod skrivs kommer Maven att ersätta variabelns värde.
Exempel:
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<finalName>${project.artifactId}</finalName>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>${maven.compiler.source}</source>
<target>${maven.compiler.target}</target>
</configuration>
</plugin>
</build>
7.2 Fördefinierade variabler i Maven
När du beskriver ett projekt i en pom-fil kan du använda fördefinierade variabler. De kan villkorligt delas in i flera grupper:
- Inbyggda projektegenskaper;
- Projektegenskaper;
- Inställningar.
Det finns bara två inbyggda projektfastigheter:
Fast egendom | Beskrivning |
---|---|
${basedir} | projektets rotkatalog varpom.xml |
${version} | artefaktversion; kan användas ${project.version} eller${pom.version} |
Projektegenskaper kan refereras med prefixet «project»
eller «pom»
. Vi har fyra av dem:
Fast egendom | Beskrivning |
---|---|
${project.build.directory} | «target» projektkatalog |
${project.build.outputDirectory} | «target» kompilatorkatalog. Standard«target/classes» |
${project.name} | projektets namn |
${project.version} | projektversion |
Egenskaper settings.xml
kan nås med prefixet settings
. Namn kan vara vad som helst - de är hämtade från settings.xml
. Exempel:
${settings.localRepository} sets the path to the local repository.