7.1 Maven'deki Değişkenler - özellikler
Maven sık karşılaşılan parametreleri değişkenlere koymanıza izin verir. Bu, pom dosyasının farklı bölümlerindeki parametreleri eşleştirmeniz gerektiğinde çok kullanışlıdır. Örneğin, Java sürümünü, kitaplık sürümlerini, belirli kaynaklara giden yolları bir değişkene koyabilirsiniz.
pom.xml – <properties>
Bunun için içinde değişkenlerin bildirildiği özel bir bölüm vardır . Değişkenin genel formu aşağıdaki gibidir:
<variable-name> _ _ _ _meaning< / variable name > _
Örnek:
<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>
Değişkenlere farklı bir sözdizimi kullanılarak erişilir:
$ { variable -name } _
Böyle bir kodun yazıldığı yerde, Maven değişkenin değerini değiştirecektir.
Örnek:
<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 Maven'de önceden tanımlanmış değişkenler
Bir pom dosyasında bir projeyi tanımlarken önceden tanımlanmış değişkenleri kullanabilirsiniz. Koşullu olarak birkaç gruba ayrılabilirler:
- Yerleşik proje özellikleri;
- Proje özellikleri;
- Ayarlar.
Yalnızca iki yerleşik proje özelliği vardır:
Mülk | Tanım |
---|---|
${tabanlıdir} | proje kök dizini neredepom.xml |
${versiyon} | artefakt versiyonu; kullanılabilir ${project.version} veya${pom.version} |
«project»
Proje özelliklerine veya ön ekleri kullanılarak başvurulabilir «pom»
. Bizde dört tane var:
Mülk | Tanım |
---|---|
${project.build.directory} | «target» proje dizini |
${project.build.outputDirectory} | «target» derleyici dizini. Varsayılan«target/classes» |
${proje.adı} | projenin adı |
${project.version} | proje versiyonu |
Özelliklere settings.xml
önek kullanılarak erişilebilir settings
. İsimler herhangi bir şey olabilir - settings.xml
. Örnek:
${settings.localRepository} sets the path to the local repository.