简介
Maven是一个跨平台的项目管理工具。
作用
标准的项目结构
标准化的构建流程
方便的依赖管理
Maven模型
仓库
本地仓库: 位于自己计算机中的仓库, 用来存储从远程仓库或中央仓库下载的插件和 jar 包,
远程仓库: 由公司或用户自己搭建的仓库,一般用于加快访问速度和放置一些需要付费使用的jar包。阿里提供了一个免费的maven 远程仓库
中央仓库: 在 maven 软件中内置一个远程仓库地址,它是中央仓库,服务于整个互联网,它是由 Maven 团队自己维护,里面存储了非常全的jar包,包含了世界上大部分流行的开源项目构件
在项目中使用坐标引入对应jar包后,会按照本地仓库 ->中央仓库的顺序查找jar包,若本地仓库中没有,但中央仓库有,会自动下载到本地仓库
搭建远程仓库后,会按照本地仓库 ->远程仓库 ->中央仓库的顺序寻找,会自动下载到远程仓库或本地仓库中
常用命令
compile:编译,将目前的java文件编译为class文件
clean:清理,清理class文件
test:测试,会自动执行test下的测试代码
package:打包,将代码编译成class文件并打成jar包
install安装:,将代码加入到本地仓库
生命周期
生命周期,即Maven一次构建过程经历了多少个事件
共有三套生命周期:
clean:清理工作
default:核心工作,例如编译,测试,打包,安装等
site:产生报告,发布站点等
注:在同一套生命周期内,执行后边的命令,前边的所有命令会自动执行
坐标
坐标是Maven中资源的唯一标识
使用坐标来定义项目或引入项目中需要的jar包
主要组成
groupld:定义当前Maven项目隶属组织名称(通常是域名反写,例:com.itheima)
aritifactld:定义当前Maven项目名称(通常是模块名称)
version:定义当前项目版本号
导入jar包
1.在pom.xml中编写<dependencies>标签(后续需要导入的jar包均在该标签内)
2.在上述标签中使用<dependency>引入坐标
3.定义坐标的 groupld , artifactld , version
4.点击刷新按钮,使坐标生效(可以设置自动刷新,但不推荐)
依赖范围
通过设置坐标的依赖范围(scope),可以设置对应jar包的作用范围:编译环境、测试环境、运行环境