liquibase和macOS遇到无法加载xml文件而Linux一切正常

故障现象

在macOS中运行项目可以正常启动,但是经过maven打包jar后运行一直报文件找不到:

java.io.FileNotFoundException: class path resource [Users/zl/Projects/gps/jtmanager/target/jtmanager-0.1.0/jtmanager-0.1.0.jar/db/changelog/2020/db-ddl.xml] cannot be resolved to URL because it does not exist

liquibase主配置文件

<includeAll path="classpath:db/changelog/2020" relativeToChangelogFile="false"/>

SpringBoot相关配置文件

    @Bean
    public SpringLiquibase liquibase(@Autowired @Qualifier("masterSource") DataSource dataSource) {
        SpringLiquibase liquibase = new SpringLiquibase();
        liquibase.setDataSource(dataSource);
        //指定changelog的位置,这里使用的一个master文件引用其他文件的方式
        liquibase.setChangeLog("classpath:db/master.xml");
        liquibase.setContexts("dev,test,prod,default");
        liquibase.setShouldRun(true);
        liquibase.setResourceLoader(new DefaultResourceLoader());
        liquibase.setDatabaseChangeLogTable("db_changelog");
        liquibase.setDatabaseChangeLogLockTable("db_changelog_lock");
        return liquibase;
    }

项目路径
在这里插入图片描述

但令人费解的是在linux中启动一切正常

问题原因:

根据错误提示应该是路径获取的时候没有获取到争取的路径导致,因为正确的应该是[/Users/zl…],而提示中是[Users/zl…],少了根路径/。

解决:

未解决,在linux中运行正常就暂时不管他了,有时间再来解决,估计是liquibase的bug。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值