Задать вопрос
azerphoenix
@azerphoenix
Java Software Engineer

Как разобраться в профилях Spring?

Здравствуйте!
Довольно странная ситуация с профилями в Spring Boot. Проверял в версиях 2.0.6 и 2.1.0
Возможно, что я неправильно понял принцип работы профилей...
Собрал проект на Spring Boot (https://start.spring.io/) через intelllij IDEA Ultimate Edition + использую Gradle.

Создал 3 файла .properties
application.properties
application-dev.properties
application-production.properties


В основном application.properties файле написал:
spring.profiles.active=dev

Соответственно, в файл application-dev.properties добавил
server.port=7777

1) Запускаю проект и он игнорирует мою конфигурацию и запускается на 8080.

2) Пробовал прописать активный профиль через IDE. Edit Configuration -> Active Profiles -> dev (в Intellij нет необходимости указывать -DSpring...)
Запускаю проект и опять он стартует на 8080, вместо 7777.

Только если прописать конфигурацию в основной файл, то он сработает.

3) Пробовал в Application.class через IDE "change profiles" и выбрал development, такой же результат.

4) Пробовал создать отдельный файл конфигурации для базы данных и добавил к разным методам @Profile ("dev") и @Profile("production").
При этом отрабатывают оба метода...

Где я ошибаюсь? Просмотрел кучу видео и облазил разные сайты.

P.S. те же манипуляции проводил с yaml файлом, а также пробовал через maven проект.
  • Вопрос задан
  • 2697 просмотров
Подписаться 2 Простой Комментировать
Решения вопроса 1
azerphoenix
@azerphoenix Автор вопроса, куратор тега Java
Java Software Engineer
Благодаря помощи все-таки разобрался с проблемой и она была до ужаса банальной)))
В общем, при создании properties файла надо вручную дописывать .properties, если в IDE выбрать тип файла properties, то он просто создаст файл (не в формате properties.)
Ссылка на решение:
Почему Spring игнорирует кофигурации properties файлов профилей?
Скрин:
5c267edd6fce3692227363.png
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
А где лежат эти файлы? Они должны быть либо в class path, либо в рабочей директории (для IDEA - это корень проекта по умолчанию).
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы