标签:集合 复杂 star 图片 man 版本问题 帮助 就会 ram
一 .概述
我们现在大多数的时候都会使用maven来管理我们的项目,但是在使用maven的过程之中有一个让人恶心的事情,就是jar文件版本的之间的冲突的问题.
当出现了这个问题的时候,我们一般就会自己去手动解决.
当我们使用spring的时候,我们常常使用spring去整合各种第三方的组件包,这个时候jar文件的版本问题更严重.
于是在springboot之中引入了版本仲裁器和场景启动器来解决这个问题.
二 .版本仲裁器
通过这个名字我们就知道版本仲裁器到底是做什么用的,没错,它就是解决jar文件版本的问题.
spring官方将我们常用的几乎所有的jar文件进行测试,然后将一批可以整合的jar版本进行管理起来,就形成了版本仲裁器.
其实版本仲裁器在springboot之中就是一个pom文件,我们通过这个pom就能管理我们jar文件了.
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.15.RELEASE</version> </parent>
这个父pom文件就是我们说的版本仲裁器.
问题的出现:
我们在使用maven的时候,我们知道我们的一个项目只能有一个父项目,这个时候我们再使用springboot为我们提供的父pom就会出现问题.
这个时候,我们可以使用maven提供版本管理器来完成这个目标.
<dependencyManagement> <dependencies> <dependency> <!-- Import dependency management from Spring Boot --> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>1.5.15.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
三 .场景启动器
我们通过springboot为我们提供的版本仲裁器就能解决版本之中冲突的问题,但是,我们如果手动的引入jar文件的话,这个依赖关系对于我们还是很复杂的.
springboot想到这个问题,为我们提供了场景启动器的概念.
所谓的场景启动器就是一个jar文件的集合,比如web的场景启动器,redis的场景启动器,当我们的项目之中需要这些场景的时候,我们直接引入这些场景启动器,就能完全的引入这个场景所需要的所有jar文件.
下面,我们看一下场景启动器到底是什么?
boot-starter-web --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>1.5.9.RELEASE</version> </dependency>
通过上面的名字,我们就能知道,这是一个web的场景启动器.
我们在项目之中引入这个场景启动器,看看到底为我们提供了什么jar文件.
我们从上面的图中可以看到,当我们引入了web的场景启动器的时候,springboot会帮助我们引入大量的依赖.
标签:集合 复杂 star 图片 man 版本问题 帮助 就会 ram
原文地址:https://www.cnblogs.com/trekxu/p/9452175.html