springboot 拷贝了一个module 启不起来
昨天同事说他配置什么的全都是拷贝的另一个module的,但就是报错,问是不是mybatis的文件没找到,一堆从mapper报的错...
看了一眼,报的是jdbc找不到url配置,datasource没有,mapper肯定报错
同事说配置了 spring-druid.yml
active.profile也指向了druid ,让同事添加标准的 datasource配置
spring.datasource.url: jdbc:mysql://xxxxx:3306/xxxxx
spring.datasource.username:root
spring.datasource.password: 1111
spring.datasource.driver-class-name: com.mysql.cj.jdbc.Driver
再启动,好了
他的疑问:是spring-druid.yml没有执行到 里面明明配置的数据源
快速解决他的疑问,把配置移到spring-druid.yml 最快的解决方法
启动,好了
我的疑问: 1、用了spring-druid.yml 的配置是 druid 多数据源配置没有引入druid.jar
拷贝的pom.xml 引入了
2、Datasource数据并没有引入druid的数据源名称
通过搜索 @Primary 也指向了 druid 的master数据原
3、DEBUG一下,虽然定义了也许没被bean加载
同事启动项目,真的没有加载
问题定位了:用了druid,也配置了数据库,也定义了Config.就是没有执行.启动springboot 时 scanner没有扫到这个目录,啊,虽然同事拷了module啥也没干,但他加了一增包里
公用模块的配置configbean 都在 a.b.c包里,而他的module 写在了 a.b.c.demo 包下 application 只会扫描demo包...所以报了一堆错,
解决:方案一,同事立马把包名删除掉;
方案二,springboot启动原理,是扫描包加载,可以重新加上@CommponetScanner注解,将basepackage="a.b.c" 即可.