Вот пример профиля в моем POM:
<profiles>
<profile>
<id>QA</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<jdbc.url>jdbc:mysql://127.0.0.1:3306/SomeDB</jdbc.url>
<jdbc.username>webapp</jdbc.username>
<jdbc.password>somepassword</jdbc.password>
</properties>
</profile>
...
У меня в папке ресурсов есть файл свойств, например:
jdbc.url = ${jdbc.url}
jdbc.username = ${jdbc.username}
jdbc.password = ${jdbc.password}
и наконец я включаю фильтрацию в моем POM:
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
...
Это на самом деле упрощенный пример, но вы поняли идею. В основном, когда я бегу
mvn install -P QA
Maven отфильтрует мой файл app.properties, заменит все заполнители на значения, содержащиеся в профиле, и развернет заполненный файл свойств.
Проблема со всем этим заключается в том, что мне нравится использовать механизм серверов в Eclipse, где у меня запущен Tomcat в среде IDE. В этом случае мои проекты выполняются, а Eclipse позаботится об обновлении, повторном развертывании и т. Д. Однако Maven не попадает в поле зрения при развертывании в IDE, и этот файл свойств никогда не заполняется должным образом.
Итак, как мне продолжить работу над проектом в IDE, но правильно ли заполнить этот файл свойств?