如何通过微型航海应用程序配置设置飞行路线占位符?



我正在尝试在配置了Flyway集成的Micronaut应用程序中运行迁移脚本。该应用程序按预期运行,并在没有任何 Flyway 占位符的情况下应用迁移脚本。但是,每当我将 Flyway 占位符添加到迁移脚本时,由于 FlywayException,应用程序不再启动:

org.flywaydb.core.api.FlywayException: No value provided for placeholder expressions: ${my_placeholder}.  Check your configuration!

我尝试使用 Micronaut Flyway 占位符配置属性(如此处所述 https://micronaut-projects.github.io/micronaut-flyway/latest/guide/index.html#io.micronaut.configuration.dbmigration.flyway.FlywayConfigurationProperties)在application.yml中配置占位符,但根本没有拾取占位符。application.yml文件如下所示:

flyway:
datasources:
default:
locations: classpath:migrations
placeholders:
my_placeholder: "some value"

我还尝试创建一个flyway.properties文件,其中占位符根据此 SO 答案中描述的内容定义 https://stackoverflow.com/a/9420671/2185719 但这也没有用

# flyway.properties
flyway.placeholders.my_placeholder=some value

在调试 Flyway 启动(特别是在PlaceholderReplacingLine中)时,我注意到placeholderReplacer对象包含一个占位符,其中_(下划线)已替换为-(破折号)。在迁移脚本中将my_placeholder更改为my-placeholder解决了此问题。

最新更新