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.