问题出现的背景:
采用分布式系统架构,然后controller层依赖于服务层,需要使用服务层的dubbo服务接口。
出现这个问题是在我使用公司以前一个微服务架构,然后需要对这个架构进行一些更改来应用到公司最新的项目上面,service层可以顺利的启动并且注册到服务中心,但是web层启动的时候就出现了问题。
在网上查找了一些解决的方法,最直接的就是因为我的web层是不需要数据源的,所以可以直接禁止自动加载数据源
@SpringBootApplication(exclude={DataSourceAutoConfiguration.class})
但是加上了过后发现在我这个项目里面没有效果。
仔细一想之前的项目都没有这个错误,也能够启动,所以开始思考是不是我web层项目哪儿出现了问题。
经过寻找发现是我web层多引用了一个service层的依赖,去掉这个依赖就可以启动项目了,但是这个依赖肯定是需要的,所以排除service依赖中的某个需要数据库连接的依赖就行了,我的是:
<exclusions>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
</exclusion>
</exclusions>
如果实在是不知道,可以排除所有依赖(前提是项目别再出现新的问题)
<exclusions>
<exclusion>
<groupId>*</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions>