bug: 配置flyway.locations多个脚本位置不生效

文章目录

业务场景

随着项目版本迭代,数据库结构也会变动。如果一个项目引用其他项目的jar包,并且需要执行对应jar包的flyway脚本,就需要配置flyway.locations

场景一

正常情况下,在一个项目中可以在yml文件中指定多个flyway脚本的地址,比如:可以正常执行

java 复制代码
spring:
  datasource:
    type: com.zaxxer.hikari.HikariDataSource
    url: jdbc:postgresql://192.168.x.xx:5432/core
    username: xxx
    password: xxxxxxx
    hikari:
      poolName: Hikari
      auto-commit: false
  flyway:
    enabled: true
    schemas: public
    encoding: UTF-8
    locations: 
    	- classpath:db/migration/db1
    	- classpath:db/migration/db2

场景二

但是如果该模块还引用了其他模块,该模块也有flyway需要执行,新增下述配置,但file/db/migration文件夹下的脚本不会生效

java 复制代码
</dependencies>
 	<dependency>
            <groupId>com.xx.xx</groupId>
            <artifactId>infra-xx-xx</artifactId>
            <version>${project.version}</version>
        </dependency>
</dependencies>

  flyway:
    locations:
      - classpath:db/migration/db1
      - classpath:db/migration/db2
      - classpath:file/db/migration

解决方案
该配置文件必须配置在依赖模块的yml文件中

相关推荐
架构师沉默1 小时前
别又牛逼了!AI 写 Java 代码真的行吗?
java·后端·架构
Java水解4 小时前
微服务架构下Spring Session与Redis分布式会话实战全解析
后端·spring
后端AI实验室5 小时前
我把一个生产Bug的排查过程,交给AI处理——20分钟后我关掉了它
java·ai
凉年技术7 小时前
Java 实现企业微信扫码登录
java·企业微信
狂奔小菜鸡8 小时前
Day41 | Java中的锁分类
java·后端·java ee
hooknum8 小时前
学习记录:基于JWT简单实现登录认证功能-demo
java
程序员Terry9 小时前
同事被深拷贝坑了3小时,我教他原型模式的正确打开方式
java·设计模式
NE_STOP9 小时前
MyBatis-缓存与注解式开发
java
码路飞9 小时前
不装 OpenClaw,我用 30 行 Python 搞了个 QQ AI 机器人
java
Re_zero9 小时前
以为用了 try-with-resources 就稳了?这三个底层漏洞让TCP双向通讯直接卡死
java·后端