如何在Flyway的不同文件中分隔每个脚本?

时间:2017-08-30 16:25:59

标签: java database version-control flyway

我试图通过Flyway将我的数据库置于版本控制中, 和我想将每个过程,函数,表等的脚本放在单独的文件和子文件夹中,如下所示:

enter image description here

但我收到此错误:

    org.flywaydb.core.api.FlywayException: Found more than one migration with version 1.0
Offenders:
-> C:\...\target\classes\db\migration\views\asuntoConsultar\V1.0__asuntoConsultar.sql (SQL)
-> C:\...\target\classes\db\migration\tables\asuntos\V1.0__asuntos.sql (SQL)

有没有办法配置flyway来理解这个结构?

1 个答案:

答案 0 :(得分:1)

Flyway可以使用此目录结构。您需要确保脚本的版本号在所有目录中是唯一的。这是因为Flyway搜索所有脚本的locations参数,然后根据版本号确定运行它们的顺序。启用调试运行可以帮助您了解其运行方式。

您可能还需要调查OutOfOrder选项,以便您不必密切跟踪文件夹中的版本号。