微服务项目中maven依赖引入失败爆红问题解决方案

前言

微服务项目中在对于依赖得引入变得比较复杂了些,当然这只是相对于普通垂直架构得项目而言。微服务项目普通是采取父子依赖包含得关系来统一管理依赖,这样做的好处也就是统一引入得依赖版本,而且在后期进行依赖版本更替时只需修改父类的版本号就可以将所有子类的依赖修改。

起因

这次的问题就是出现在dependencyManagement这个标签的使用上

微服务项目中maven依赖引入失败爆红问题解决方案

上图依赖产生的问题并不是依赖引入错误或者版本号错误,对于上述的版本在前面的properties中已经注明,这类的错误是存在于在dependencyManagement中依赖的引入必须另加两个标签说明,一个是type类型标签,另一个就是scope作用域标签。我们都知道父类依赖文件的作用是管理依赖包的版本,一般用来保持当前项目的所有依赖版本统一。

解决方案

所以在引用依赖的时候必须加上类型为pom的type标签和作用域为import的scope标签。如下图:

微服务项目中maven依赖引入失败爆红问题解决方案

结尾

这里简略解释一下,type标签的pom属性代是pom依赖文件这点毋庸置疑的,scope标签中有较多属性,其中的import属性就是把dependencyManagement所管理依赖版本中所需的版本依赖进行import引入进来,这样既不会浪费资源又可以灵活操作。