Перейти к основному содержимому

См. Переменные среды в pom.xml.

· 2 мин. чтения

1. Обзор

В этом кратком руководстве мы увидим, как читать переменные среды из pom.xml Maven , чтобы настроить процесс сборки. ``

2. Переменные среды

Чтобы обратиться к переменным среды из pom.xml , мы можем использовать синтаксис ${env.VARIABLE_NAME} .

Например, давайте использовать его для внешней версии Java в процессе сборки:

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>${env.JAVA_VERSION}</source>
<target>${env.JAVA_VERSION}</target>
</configuration>
</plugin>
</plugins>
</build>

Мы должны помнить о передаче информации о версии Java через переменные среды. Если мы этого не сделаем, мы не сможем построить проект.

Чтобы запустить цели или этапы Maven для такого файла сборки, мы должны сначала экспортировать переменную среды. Например:

$ export JAVA_VERSION=9
$ mvn clean package

В Windows мы должны использовать синтаксис « set VAR=value» для экспорта переменной среды.

Чтобы предоставить значение по умолчанию, когда переменная среды JAVA_VERSION отсутствует, мы можем использовать профиль Maven :

<profiles>
<profile>
<id>default-java</id>
<activation>
<property>
<name>!env.JAVA_VERSION</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>

Как показано выше, мы создаем профиль и делаем его активным, только если отсутствует переменная среды JAVA_VERSION — часть !env.JAVA_VERSION . Если это произойдет, то это новое определение плагина переопределит существующее.

3. Заключение

В этом кратком руководстве мы увидели, как настроить процесс сборки, передав переменные среды в файл pom.xml .