У меня обычный Java проект с несколькими файлами свойств (для нескольких сред):
application.properties
application-dev.properties
application-prod.properties
, где:
application.properties
сохраняет конфигурацию для локальная (переносная) среда. application-dev.properties
сохраняет конфигурацию для среды удаленной разработки. application-prod.properties
сохраняет конфигурацию для удаленной производственной среды.
В моем pom.xml
определены следующие профили Maven:
<profiles>
<profile>
<id>local</id>
<properties>
...
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>dev</id>
<properties>
...
</properties>
</profile>
<profile>
<id>prod</id>
<properties>
...
</properties>
</profile>
</profiles>
Затем в своем коде я использую этот код для чтения файла свойств:
String rootPath = Thread.currentThread().getContextClassLoader().getResource("").getPath();
String appConfigPath = rootPath + "application.properties";
Properties properties = new Properties();
properties.load(new FileInputStream(appConfigPath));
Как можно настроить код так, чтобы при использовании другого профиля Maven читался другой файл свойств?