Flyway找不到以时间戳为前缀的迁移

tp5buhyn  于 2022-09-18  发布在  Spring
关注(0)|答案(1)|浏览(153)

我将Kotlin与Spring、Flyway Plugin 9.3和Flyway-core一起使用,但没有指定运行迁移的版本。

配置文件如下所示:

flyway {
    url = "url"
    user = "user"
    password = "password"
    locations = arrayOf("filesystem:src/main/resources/db/migration/common")
    placeholderPrefix = "${flyway:timestamp}"
    sqlMigrationPrefix = "${flyway:timestamp}"
}

db/migration/common中,我具有以下格式的迁移:202203311000__create-something-table.sql

但当我执行Flyway Migration命令时,它无法识别迁移,并收到以下消息:Unrecognised migration name format: 202203311000__create-le-table.sql

但是,如果我更改文件的前缀(更改为V1、V2...)它通常会识别迁移。

**编辑1:**我把迁移的名字写错了(我不仅仅是复制粘贴😅

**edit2:**放入flyway validateMigrationName的一个输出

dzjeubhm

dzjeubhm1#

你有这个:202201311000_CREATE-Something

当您需要时:V202201311000__Create-Something

唯一的区别是增加了‘V’,告诉Flyway这是一个迁移脚本,数字后面有两个下划线。这些都是命名标准的一部分。假设时间戳始终是连续的(显然它应该是连续的),这应该可以解决问题。

Here's an article I wrote on this。我经常把这件事搞砸。

相关问题