Я использую Flyway версии 5.2.4 в проекте scala и все мои сценарии миграции находятся в каталоге src / main / resources / db / migrations со следующей структурой папок
main
-resources
--db
---migrations
----V1__example1.sql
----V2__example2.sql
----V3__scala_migration.scala
расположение установите db.migrations (без префикса. В документации Flyway сказано, что если префикс не используется, то миграция sql / java поддерживается)
V1 и V2, похоже, поднимаются без проблем. Но V3 игнорируется. Я попытался добавить V3__java_migration. java, и это не имело никакого значения. Кому-нибудь повезло, добавив не-1013 * миграции?
Вот код scala в миграции
package db.migration
import org.flywaydb.core.api.migration.{ BaseJavaMigration, Context }
class V3__scala_migration extends BaseJavaMigration {
override def migrate(context: Context): Unit = {
val conn = context.getConnection
conn.createStatement().executeUpdate(
"""
|DROP TABLE IF EXISTS `users`;
|CREATE TABLE IF NOT EXISTS `users`
|`name` varchar(100) NOT NULL,
|`email` varchar(100) NOT NULL,
|PRIMARY KEY (`email`)
|)ENGINE=InnoDB DEFAULT CHARSET=utf8;
|INSERT INTO `users` (`name`, `email`) ('john','john@example.com');
""".stripMargin)
}
}