Задать вопрос
@utsiye

Почему не запускается Flyway?

Использую его вместе с hibernate. Зависимости в pom.xml добавил. Вот настройки в application.properties:
spring.flyway.enabled=true
spring.flyway.locations=classpath:db/migration
spring.flyway.baseline-on-migrate=true
spring.jpa.properties.hibernate.validator.apply_to_ddl=false


При запуске вообще ничего нет о flyway в консоли и таблица тоже не создается вспомогательная. В чем может быть причина?
Папка resources/db/migration есть. Файл в формате V1__*.sql тоже.
  • Вопрос задан
  • 89 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Java-разработчик с нуля
    12 месяцев
    Далее
  • Академия Эдюсон
    Java-разработчик + ИИ
    8 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Java-разработчик + ИИ
    9 месяцев
    Далее
Решения вопроса 1
opium
@opium
Просто люблю качественно работать
Скорее всего не задан DataSource: spring.datasource.url, username, password. Без него Flyway молча не стартует, даже с enabled=true.

Если MySQL и Flyway 9+, нужен ещё flyway-mysql в pom.xml дополнительно к flyway-core (для PostgreSQL — flyway-database-postgresql).

Для диагностики: logging.level.org.flywaydb=DEBUG. Если FlywayAutoConfiguration в логах нет вообще, значит либо зависимость не попала в classpath, либо датасорс не настроен.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@CodeWalker79
Проблема в том, что Flyway не подключается к базе данных. Проверьте следующие моменты:
1. Зависимость в pom.xml
Убедитесь, что добавлена именно зависимость Flyway, а не только плагин:
<dependency>
    <groupId>org.flywaydb</groupId>
    <artifactId>flyway-core</artifactId>
</dependency>

Для Spring Boot 2.x также нужна совместимая версия. Если используете Spring Boot 3.x, потребуется flyway-mysql или драйвер вашей БД.
2. Настройки подключения к БД
Flyway не запустится без корректного DataSource . Проверьте:
spring.datasource.url=jdbc:mysql://localhost:3306/your_db
spring.datasource.username=root
spring.datasource.password=password
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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