Как запустить миграцию Flyway до генерации кода jOOQ с помощью Spring Boot? - PullRequest
0 голосов
/ 29 января 2019

Я пытаюсь использовать Flyway и jOOQ вместе с Spring Boot (spring-boot-starter-jooq и автоматически сконфигурированный Flyway, оба обрабатываются Spring)

Моя проблема заключается в том, что генерация кода jOOQ выполняется до миграции Flyway, поэтому jOOQ нене вижу изменений, сделанных Flyway.

Я попытался установить dependsOn для задачи генератора jOOQ на flywayMigrate, но оказалось, что Flyway запускается только при запуске.Плагин Flyway Gradle не применяется, поэтому у меня нет задачи flywayMigrate.

Когда я попытался добавить его в конфигурацию Gradle, следуя официальному руководству Flyway:

apply plugin: "org.flywaydb.flyway"

flyway {
    url = 'jdbc:postgresql://localhost:5432/myDb'
    user = 'myUsr'
    password = 'mySecretPwd'
    schemas = ['public']
}

Я получилисключение:

java.lang.NoClassDefFoundError: org.flywaydb.core.internal.util.jdbc.DriverDataSource

Что я делаю не так?Как мне настроить это так, чтобы они хорошо работали вместе?

Обратите внимание, что у меня есть драйвер PostgreSQL и Flyway Core в качестве зависимости:

implementation "org.postgresql:postgresql:42.2.5"
implementation "org.flywaydb:flyway-core"

, поэтому он должен работать.Вероятно, это проблема Gradle vs Flyway vs Spring, потому что Flyway работает, когда я запускаю приложение Spring.

...