Как мне настроить eclipse для использования разных значений переменных среды для разных фаз maven во время процесса maven? - PullRequest
0 голосов
/ 15 июля 2011

Предыстория

Наш проект строится с Maven. Мы используем затмение.
В проекте у меня есть два файла свойств БД:

  • jdbc.test.properties
  • jdbc.prod.properties

с той же структурой:

jdbc.driverClassName=
jdbc.url=
jdbc.username=
jdbc.password=

Значение имени пользователя и пароля в файлах различно. Поэтому мы используем разные схемы для яичек и производства.

В data-access-config.xml у меня есть следующая строка:

<context:property-placeholder location="classpath:jdbc.${db.flag}.properties"/>

Что я делаю:

  1. я нажимаю "maven install" (в контекстном меню в eclipse)
  2. Запуск процесса сборки Maven

Что я хочу:

  • переменная окружения "db.flag" была установлена ​​на "test" во время теста фаза
  • переменная окружения "db.flag" была установлена ​​на "prod" во время других фазы

Теперь я использую файл bat:

call mvn test -Ddb.flag=test
call mvn install -Ddb.flag=prod -Dmaven.test.skip=true

Но это не проблема для моей команды.


Как мне настроить eclipse для использования разных значений переменной среды для разных фаз maven во время процесса maven?

Буду рад любому совету.

1 Ответ

1 голос
/ 15 июля 2011

Я советую хранить каждую копию под одним и тем же именем (jdbc.properties) в src / main / resources и src / test / resources, чтобы на этапе тестирования можно было автоматически выбрать настройки «test», а ваш атрибут местоположения - нет.требуется больше.

Maven позаботится о том, чтобы ресурсы тестирования использовались только на этапе тестирования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...