Flyway迁移无法识别beforeValidate.sql
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flyway迁移无法识别beforeValidate.sql相关的知识,希望对你有一定的参考价值。
尝试使用beforeValidate.sal回调文件进行Flyway迁移时出现以下错误:
Wrong migration name format: beforeValidate.sql(It should look like
this: 1.2__Description.)
似乎Flyway不认识到这是回调脚本的名称。
我在十二月对它进行了测试,结果正常。但是当我现在尝试时,我得到了那个错误。
更新:最后还有更多的时间来研究这个问题。此功能以前与Flyway 4.1.2一起使用。当我回滚到该版本时,事情按预期工作。它不适用于Flyway 5.0.4(我们已在代码库中升级)或最新的Flyway 5.0.7。 Flyway是否放弃了对此功能的支持,或者可能会更改未记录的内容?
更新2:将此缩小了一些。这仍然适用于Flyway 4.2.0,但在Flyway 5.0.2中不起作用。另外,请注意我们正在使用Gradle,因此使用Gradle插件失败了。我无法尝试使用Flyway 5.0.0或5.0.1,因为这些版本的Gradle插件似乎不可用。
最后将问题跟踪到错误的配置。我们使用Gradle插件,并且我们没有更新设置以考虑sqlMigrationSuffixes现在是多值的。我们还在设定它
sqlMigrationSuffixes ='。sql'
什么时候应该设置为
sqlMigrationSuffixes = ['.sql']
显然,在我们的情况下这足以混淆Flyway并导致它无法识别beforeValidate.sql作为回调脚本之一。
以上是关于Flyway迁移无法识别beforeValidate.sql的主要内容,如果未能解决你的问题,请参考以下文章
Flyway迁移,无法从DataSource获取Jdbc连接