7.1 Maven मधील चल - गुणधर्म

मावेन तुम्हाला व्हेरिएबल्समध्ये ठेवण्याची अनुमती देते वारंवार आढळणारे पॅरामीटर्स. जेव्हा तुम्हाला pom फाइलच्या वेगवेगळ्या भागांमध्ये पॅरामीटर्स जुळवण्याची आवश्यकता असते तेव्हा हे खूप उपयुक्त आहे. उदाहरणार्थ, तुम्ही Java आवृत्ती, लायब्ररी आवृत्त्या, ठराविक संसाधनांचे मार्ग व्हेरिएबलमध्ये ठेवू शकता.

यासाठी, मध्ये एक विशेष विभाग आहे pom.xml – <properties>, ज्यामध्ये व्हेरिएबल्स घोषित केले जातात. व्हेरिएबलचे सामान्य स्वरूप खालीलप्रमाणे आहे:

<variable-name> _ _ _ _meaning< / variable name > _

उदाहरण:

<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>

भिन्न वाक्यरचना वापरून व्हेरिएबल्समध्ये प्रवेश केला जातो:

$ { variable -name } _

जेथे असा कोड लिहिलेला असेल तेथे Maven व्हेरिएबलचे मूल्य बदलेल.

उदाहरण:

<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 मध्ये पूर्वनिर्धारित चल

पॉम फाइलमध्ये प्रोजेक्टचे वर्णन करताना, तुम्ही पूर्वनिर्धारित व्हेरिएबल्स वापरू शकता. ते सशर्तपणे अनेक गटांमध्ये विभागले जाऊ शकतात:

  • अंगभूत प्रकल्प गुणधर्म;
  • प्रकल्प गुणधर्म;
  • सेटिंग्ज.

फक्त दोन अंगभूत प्रकल्प गुणधर्म आहेत:

मालमत्ता वर्णन
${basedir} प्रकल्प रूट निर्देशिका कुठेpom.xml
${आवृत्ती} कृत्रिमता आवृत्ती; वापरले जाऊ शकते ${project.version}किंवा${pom.version}

«project»प्रकल्प गुणधर्म किंवा उपसर्ग वापरून संदर्भित केले जाऊ शकते «pom». आमच्याकडे त्यापैकी चार आहेत:

मालमत्ता वर्णन
${project.build.directory} «target»प्रकल्प निर्देशिका
${project.build.outputDirectory} «target»कंपाइलर निर्देशिका. डीफॉल्ट«target/classes»
${project.name} प्रकल्पाचे नाव
${project.version} प्रकल्प आवृत्ती

settings.xmlउपसर्ग वापरून गुणधर्मांमध्ये प्रवेश केला जाऊ शकतो settings. नावे काहीही असू शकतात - ते वरून घेतले जातात settings.xml. उदाहरण:

${settings.localRepository} sets the path to the local repository.