springboot多模块中的共用配置文件

项目中遇到这样的问题:公共模块comm有些参数是配置文件里配置的,其他的应用依赖comm包,这样一来每个应用都需要配置一个与comm相同的参数才行,否则启动时,报错。找不到配置参数,无法解析的异常:

springboot多模块中的共用配置文件

那么有没有办法实现这样的需求:

公共模块comm,配置了参数,
应用A 依赖comm,如果A里配置了相同的参数,则会覆盖comm里设置的 参数,如果A里没设置,那就采用comm里的参数配置?

经过半个小时的测试,答案是肯定的:

1、架构草图如图所示:

springboot多模块中的共用配置文件

2、application.yml:

springboot多模块中的共用配置文件

3、经测试,dev也就是说上层的配置文件要放在后面,他会覆盖前面的相同参数,如果后面的配置文件里没有配置,就采用commdev公共模块的共用参数。

 

4、如果还有其他问题、更好的解决方法,欢迎留言讨论。