关于SpringBoot Error creating bean with name 'dataSource' defined in class path resource 比较特别的一种情况

出现这种问题一般的解决方式是:

在Application启动类上增加:
@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})

当然也可以在yml配置文件中把需要的配置信息添加上去。

但今天遇到这样一种情况,上面两种方式试了但不管用,小编先贴出错误提示:

关于SpringBoot Error creating bean with name 'dataSource' defined in class path resource 比较特别的一种情况_第1张图片我是把配置信息写入到了config-dev.properties中,然后利用@PropertySource注解进行加载。

总结了一下出现上面这种问题的原因:启动类放置的位置不对,查找了一下文档,发现,springboot是从最外层到内层加载,所以意识到,应该是第三方jar里面的数据源先加载了,而我写的配置文件在启动的时候并未加载,所以报找不到数据连接的错误。

解决方案:尽量把启动类放到最外层包下面,让它头上配置的信息先加载。

解决思路: 1、在启动项加上@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class}),无果。

                   2、怀疑是不是@PropertySource(value="classpath:config-dev.properties")未加载到,于是在1的基础上,写了个方法获取classpath:config-dev.properties。具体方法看:https://www.cnblogs.com/cxuanBlog/p/10927823.html,无果。

                   3、怀疑是不是先后加载顺序的问题,终于在这里找到了答案:https://blog.csdn.net/tofucai/article/details/82625179

   希望能帮到你们,遇到问题一步一步的思考,相信自己没有解决不了的问题。

你可能感兴趣的:(关于SpringBoot Error creating bean with name 'dataSource' defined in class path resource 比较特别的一种情况)