一、maven是什么?
二、maven管的是什么?maven是一个开源的项目管理工具。
maven管的是项目对jar文件的依赖关系。
我们在开发java项目时,会用到很多的第三方类库,也就是一些jar文件,这叫做项目依赖于这些jar文件。同时,项目依赖的这些jar包也会依赖另一些jar包。这就要求我们在开发项目时,不仅要引入直接依赖的jar,还要引入间接依赖的jar。产生的后果是jar引入混乱,有可能多引,有可能少引,也有可能重复引。
maven可以很好的解决这一情况。首先引入一个概念:坐标。maven中的项目都有自己唯一的坐标,这些坐标包括groupid、artifactid、version、package,这些坐标也会唯一确定该项目。其中artifactid一般代表项目名。
那么,maven是怎么解决这种依赖关系的呢?
我们在用maven构建项目时,只需要在dependencies标签中配置项目直接依赖的jar包,而不需要再去考虑间接依赖的jar文件了。即项目的依赖只考虑直接依赖,maven会帮助我们解决间接依赖的问题。