一、maven的介绍
1、什么是maven?
maven[ˈmevən]:是apache的一个开源项目,是一个项目构建工具,用来管理依赖
好处:
管理依赖:对jar包统一管理
项目构建:编译、测试、打包、部署
2、maven的核心概念
仓库:
本地仓库:在程序员的电脑上,用于存储从中央仓库和私服下载的jar包
私服:在公司,用于存储从中央仓库下载的jar包
中央仓库:在外网,存放了基本上所有的jar包
坐标:
作用:用于定位jar包在仓库的位置
坐标:公司名+项目名+版本号
二、maven的安装
1、下载
官网:http://maven.apache.org/
2、解压
必须将maven安装包解压到一个没有中文没有空格的路径下
3、配置阿里云镜像仓库(修改settings.xml)
<mirrors>
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
</mirror>
4、配置本地仓库(修改settings.xml)
<localRepository>自己创建仓库路径</localRepository>
三、idea继承maven
1、继承maven
在父项目中添加依赖,后续创建的子项目同样有依赖
2、添加依赖
<dependencies>
依赖的坐标
</dependencies>
3、解决下载失败问题?
①删除重下
②拷贝其他人的依赖
四、maven的生命周期
清理生命周期:
clean
默认生命周期:
compile--test--package--install--deploy
站点生命周期:
site
注意:maven有三套相互独立的生命周期,在一套生命周期内执行后边的命令时前边的命令都会执行
五、依赖冲突
后添加的同一大版本依赖会将之前添加的同一大版本依赖覆盖
解决方法:
1、第一生命者优先:调顺序
2、路径近者优先:直接引用,即不用传递进来的依赖
3、排除依赖
4、版本锁定
六、依赖范围
main/java test/java war包
test n y n
provided y y n
runtime n y y
compile(默认) y y y