Maven的作用
自动构建项目:帮助开发人员编译、测试、打包、安装、部署项目
管理依赖:自动下载程序用到的jar包,管理jar包
Maven的下载
下载地址:https://archive.apache.org/dist/maven/maven-3/3.3.9/binaries/
zip版是windows版本
初学者建议下载3.3.9(稳定版)
配置环境变量
确保JAVA-HOME指向了jdk,如
将maven的bin目录添加到path中
在命令行执行mvn -v查看是否安装成功
出现如下界面说明安装成功
maven的目录结构
一个maven项目对应着一个文件夹,比如项目名叫Hello
maven的配置文件pom.xml
pom:project object module即项目模型
maven通过pom.xml文件实现 项目的构建 和 依赖的管理
project是根标签,用来约束后面的标签,即 用来告诉编译器后面的标签怎么使用
pom模型的版本,一般是4.0.0
坐标:由groupId、artifactId、version用来确定互联网上的一个唯一的资源,简称gav
就像地址一样,用来标识网络上的资源的
groupId:组织名、公司名,用来标识一个团体
artifactId:项目名称,用来表示这个公司的哪个项目
version:项目版本号
版本号中如果出现了-SNAPSHOT(即快照),表示该版本不是稳定的版本
注意:每一个maven项目,都有一个属于自己的gav,也需要使用别人的gav来标识用到的依赖
搜索坐标的网址:http://mvnrepository.com/
依赖
项目中用到了王一博,就叫依赖王一博
依赖又叫 jar包,就是项目中用到的资源,就是别人写好的、你可以直接用的 一些类
格式:
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.16</version>
</dependency>
</dependencies>
一个dependency就是一个jar包,maven会根据gav(前面提到的坐标)找到网络中的这个地址,下载并管理jar包
打包类型
已经写好的maven项目可以打包起来供别人使用
项目打包的类型 可以是jar、war、rar、ear、pom,默认是jar
仓库
maven仓库用来存放jar包
本地仓库:C:\Users\Hezhen Pang\.m2\repository
修改本地仓库地址
新建一个本地仓库,比如:D:/MavenRepository
在 maven的安装地址\apache-maven-3.3.9\conf\settings.xml中的<!--localRepository>下面加上
<localRepository>D:/MavenRepository</localRepository>
加上这样一句话就能把本地仓库的地址修改成D:/openrepository了
使用依赖时,Maven会先在本地仓库里找。找不到再去网络上下载到本地仓库,然后使用它。
在idea中配置maven
在idea中导入maven
依次点击File--------settings-------build---------build tools--------maven,然后配置以下3个路径
Maven------runner
JRE选择自己的JDK版本
在maven中创建项目
创建一个空工程
Next--------------finish
创建普通模块
在右上角打开project structrue(有时会自己弹出)---------modules------点加号-------maven-----next
创建web模块
在右上角打开project structrue------------modules------------点加号-------------maven
依赖管理
scope标签用来指明依赖(说白了就是jar包,就是一些类)被需要的范围
Scope: compile 默认值,在项目构建的所有阶段都被需要
Scope: test 只在项目测试阶段被需要
Scope: provided 在项目部署到服务器上时,不需要提供这个依赖,因为服务器默认提供了这个依赖(servlet依赖、jsp依赖)