开发者社区> 问答> 正文

多环境指定不同的canal.properties配置文件,不生效

环境信息

canal version 1.1.3 mysql version 5.6

问题描述

如图,添加了多个canal-pre.properties, canal-prd.properties,以及startup-pre.sh, , startup-prd.sh, startup-pre.sh 脚本中指定的是canal-pre.properties,CanalLauncher中取到的也是正确的值:canal-pre.properties,但是最终加载的却是canal.properties,经过源码跟踪,配置文件加载了,base-instance.xml以及h2-tsdb.xml,但是这里面都是写死了属性locationNames,的canal.conf为classpath:canal.properties,造成最终加载的还是canal.properties,建议将classpath:canal.properties改为${canal.conf:}

提问189.png

期待结果

可以动态设置要加载的canal.properties文件

现执行情况

1.1.3版本只会加载canal.properties

原提问者GitHub用户yestin0303

展开
收起
Java工程师 2023-05-03 12:27:12 121 0
1 条回答
写回答
取消 提交回答
  • 发现加载时候,spring用的相对路径,所以又修改了下,

    回答20.png

    ,同时,canallaucher这个类,做出以下修改,

    回答21.png

    这样测试后,发现可行

    原回答者GitHub用户agapple

    2023-05-04 16:10:13
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载