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文件中

相关推荐
wanghowie28 分钟前
01.07 Java基础篇|函数式编程与语言新特性总览
java·开发语言·面试
Cricyta Sevina35 分钟前
Java IO 基础理论知识笔记
java·开发语言·笔记
小萌新上大分1 小时前
java线程通信 生产者消费者,synchronized,,ReentrantLock,Condition(笔记备份)
java·多线程·lock·java线程间通信的方式·reentrantlock使用·生产者消费者问题java·java多线程与高并发
それども1 小时前
Spring Bean 的name可以相同吗
java·后端·spring
墨雪不会编程1 小时前
C++ string 详解:STL 字符串容器的使用技巧
java·开发语言·c++
Lucky GGBond1 小时前
实践开发:老系统新增字段我是如何用枚举优雅兼容历史数据的
java
悲喜自渡7211 小时前
Python 编程(gem5 )
java·linux·开发语言
xing-xing2 小时前
JVM 内存、直接内存、系统内存、本地内存、物理内存总结
java·jvm
yangpipi-2 小时前
《C++并发编程实战》第5章 C++内存模型和原子操作
android·java·c++
qq_12498707533 小时前
基于微信小程序的电子元器件商城(源码+论文+部署+安装)
java·spring boot·spring·微信小程序·小程序·毕业设计