Установка переменной среды с помощью Maven 2.x - PullRequest
8 голосов
/ 17 августа 2010

Можно ли установить переменную окружения с помощью maven (ОС: Linux)?

У меня уже есть определенные пользователем свойства (в pom и в profiles.xml) .... моя проблема в том, как выполнить следующее из Maven

export GGA_FRE=/path

Так будет возможно, что каждый разработчик может установить свой собственный путь для GGA_FRE.

Ответы [ 2 ]

4 голосов
/ 17 августа 2010

Этот ответ неверный, по крайней мере, не полностью (см. Комментарии).
К сожалению, я не могу удалить его, поскольку он был принят.Ваш пробег может варьироваться.


Используйте exec: exec mojo.

  <plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>exec-maven-plugin</artifactId>
    <version>1.1</version>
    <executions>
      <execution>
        <id>exportVar</id>
        <phase>initialize</phase>
        <goals>
          <goal>exec</goal>
        </goals>
      </execution>
    </executions>
    <configuration>
      <executable>export</executable>
      <arguments>
        <argument>GGA_FRE=${my.path}</argument>
      </arguments>
    </configuration>
  </plugin>

, теперь называйте его так mvn install -Dmy.path=/var/users/groucho

0 голосов
/ 15 февраля 2012

Я не думаю, что есть способ Java для установки переменной среды, как это делает команда export (чтобы она была доступна за пределами Java).(см., например, этот вопрос: Как установить переменные окружения из Java? )

Однако вы можете взломать ваш путь: например, используйте плагин maven-exec для запуска сценария оболочкии затем установите переменную в сценарии.Вы можете передать параметр в ваш скрипт, чтобы указать значение переменной.(обратите внимание, что я не проверял это)

...