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 分钟前
Java中数组、ArrayList和List的初始化与转换
java·list
渡我白衣4 分钟前
计算机组成原理(1):计算机发展历程
java·运维·开发语言·网络·c++·笔记·硬件架构
李拾叁的摸鱼日常8 分钟前
Redis 实现仓储单据异步提交技术方案
java·后端
步步为营DotNet15 分钟前
深入理解IAsyncEnumerable:异步迭代的底层实现与应用优化
java·服务器·数据库
qq_4798754317 分钟前
protobuf[1]
java·开发语言
装不满的克莱因瓶20 分钟前
【Java架构 搭建环境篇三】Linux安装Git详细教程
java·linux·运维·服务器·git·架构·centos
运维@小兵23 分钟前
使用Spring-ai实现同步响应和流式响应
java·人工智能·spring-ai·ai流式响应
CoderYanger24 分钟前
A.每日一题——3432. 统计元素和差值为偶数的分区方案
java·数据结构·算法·leetcode·1024程序员节
Geoking.25 分钟前
JDK 版本与 Java 版本的关系
java·开发语言
huohuopro28 分钟前
java基础深度学习 #1
java·开发语言·java基础