一.什么是Maven.
Maven是一个跨平台的项目管理工具。是由Apache软件基金会所提供的开源项目,主要服务于基于java平台的项目构建,依赖管理和项目信息管理。
为什么需要Maven
历史:最初程序员作开发的时候,需要什么jar包都需要自己去进行下载配置添加,过程过于繁琐,也浪费时间,而且不同jar包之间可能还会发生冲突。
Maven改变了这种手动维护Jar包的方式,设计出一套自动维护Jar包的体系,现目前已经广泛在软件项目中使用,是软件开发人员必须掌握的技术。
二:四大特征
Maven使用了pom模型,引入了“仓库”、“依赖”、“坐标”、“命令”。
1.仓库 repository
Maven和我们之前学习的git很类似,其也是分布式架构,一共有三个仓库。分别是:全球仓库,也称作为中央仓库;镜像仓库;本地仓库。
中央仓库:全球开发者都可以连接并自动下载jar包,而无需去厂家官网下载。
镜像仓库:因为所有人都在中央仓库下载,中央仓库压力太大,于是在全球各地做了镜像仓库,咱中国有网易,阿里等镜像仓库。
本地仓库:你下载下来的jar包会保存在一个文件夹里,每次使用都会默认调用该文件夹里的jar包。
当用户需要某个jar包时,先到本地仓库寻找,没有再去镜像仓库,没有再去中央仓库。中央仓库找到后,并不直接返回到本地仓库,而是保存一份到镜像仓库,镜像仓库返回本地仓库,本地仓库也保存一份,然后返回给调用者。这样设计是不是太精妙了,只需维护中央仓库,其它仓库自行维护。这就是maven的魅力,这种设计思想是我们开发者需要琢磨和借鉴的。
2.依赖 dependency
每个核心jar包形成一个依赖,Maven底层进行它相关的jar包的自动导入。
每个Maven项目里的pom.xml就有依赖的jar包配置
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.32</version>
</dependency>
打开本地仓库里的jar包。每一个jar包下面都会有一个后缀名为:pom的文件,这个pom就是jar包的配置文件。每下载一个jar包就会读取他的配置文件,如果配置文件中还有其他jar包的配置就会继续下载配置中的jar包。
3.坐标 coordinate
Maven定义了一组规则:世界上任何一个构建都可以使用Maven坐标来唯一标识。
4.命令 Mvn cmd
常用命令:
clean 清理
compile 编译
test 测试
site 站点文档
package 打包jar、war
deploy 部署到私服
install 安装jar到本地仓库中
run 运行
每个周期中运行一个命令时,在这个周期里的其他在该命令之前的phase步骤都会执行。如:执行install会自动执行compile(编译java变成了class),test(运行所有单元测试类),package(把整个项目零碎的class文件打包为jar包),最终把成品jar发布到本地仓库中。但执行install并不会自动执行clean。
三.安装Maven
官网:Maven – Download Apache Mavenhttp://maven.apache.org/download.html1.下载并解压到你指定的文件里
提醒:软件最好放在根目录下,有时候会发生错误。
2.配置settings文件
需要配置自己本地仓库位置,和镜像仓库的位置。
打开settings.xml文件
配置本地仓库路径:
系统默认配置在C盘,
配置镜像仓库:
不配置镜像仓库,会去中央仓库下载
IDEA集成Maven
随便打开一个项目点文件下的 New Projects Settings选项,选择settings for new Projects
保存,退出,然后新建项目
创建完成.