Maven概述
Maven 是一个项目管理工具,它包含了一个项目对象模型 (POM:Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标 (goal)的逻辑。
俩个经典的作用
Maven可以构建工程,管理 jar 包,编译代码,还能帮你自动运行单元测试,打包,生成报表,甚至能帮你部署项目,生成 Web 站点。
- Maven 的依赖管理
在配置文件pom.xml中配置我们要使用的jar包的坐标。
maven 工程中不直接将jar 包导入到工程中,而是通过在 pom.xml 文件中添加所需jar 包的坐标,这样就很好的避免了jar 直接引入进来,在需要用到jar 包的时候,只要查找pom.xml 文件,再通过 pom.xml 文件中的坐标,到一个专门用于”存放 jar 包的仓库”**(maven 仓库)**中根据坐标从而找到这些jar 包,再把这些jar包拿去运行。
注意:
maven 中也有索引的概念,通过建立索引,可以大大提高加载 jar 包的速度。
- 项目的一键构建
项目从编译、测试、运行、打包、安装 ,部署整个过程都交给 maven 进行管理,这个过程称为构建。
构建如下图所示:
Maven 仓库
- maven仓库的分类
- 用来存储从远程仓库或中央仓库下载的插件和jar 包,项目使用一些插件或jar 包, 优先从本地仓库查找。
- 远程仓库:如果本地需要插件或者jar包,本地仓库没有,默认去远程仓库下载。远程仓库可以在互联网内也可以在局域网内。
- 中央仓库 :在 maven 软件中内置一个远程仓库地址 https://mvnrepository.com/ ,它是中央仓库,服务于整个互联网,它是由 Maven 团队自己维护,里面存储了非常全的 jar 包,它包含了世界上大部分流行的开源项目构件。
- Maven 本地仓库的配置
可以在maven中的conf目录下面的settings.xml文件修改本地maven的配置文件。
在localRepository这个标签上可以修改本地的maven仓库的地址。
Maven 常用命令
进入到当前项目中,来使用maven中的一些常用命令。
输入CMD命令进入到终端。
-
compile
compile 是 maven 工程的编译命令,作用是将 src/main/java 下的文件编译为 class 文件输出到 target 目录下。
-
test
test 是maven工程的测试命令mvn test,会执行src/test/java 下的单元测试类。
这里由于我们是新建的工程因此没有测试代码,显示No tests to run。 -
clean
clean 是maven 工程的清理命令,执行 clean 会删除target 目录及内容。
-
package
package 是maven 工程的打包命令,对于java 工程执行package 打成jar 包,对于web 工程打成war 包。
-
install
install 是maven 工程的安装命令,执行install 将maven 打成jar 包或 war 包发布到本地仓库。
Maven 指令的生命周期
maven 对项目构建过程分为三套相互独立的生命周期,请注意这里说的是“三套”,而且“相互独立”。
- Clean Lifecycle 在进行真正的构建之前进行一些清理工作。
- Default Lifecycle 构建的核心部分,编译,测试,打包,部署等等。
- Site Lifecycle 生成项目报告,站点,发布站点。
Maven 的概念模型
- 项目对象模型 (Project Object Model)
一个maven 工程都有一个pom.xml 文件,通过 pom.xml 文件定义项目的坐标、项目依赖、项目信息、插件目标等。
- 项目生命周期(Project Lifecycle)
使用maven 完成项目的构建,项目构建包括:清理、编译、测试、部署等过程,maven 将这些过程规范为一个生命周期。
- 依赖管理系统(Dependency Management System)
通过maven 的依赖管理对项目所依赖的jar 包进行统一管理。
- 一组标准集合
maven 将整个项目管理过程定义一组标准,有标准的目录结构,有标准的生命周期阶段、依赖管理有标准的坐标定义等。
- 插件目标
maven 管理项目生命周期过程都是基于插件完成的。
Maven 工程的认识
-
点击New Project,输入项目的名称(Name)、项目的存放地址(Location)、构建的系统(Maven),信息填写好了之后,点击Create按钮。
-
点击File之后点击Settings。
-
找到Build、Execution、Deployment里面的Build Tools里面的Maven,将maven的本地路径、配置文件路径和本地仓库路径补充完整。
-
创建好之后,点击maven按钮,点击install按钮。
-
最后图片如下图
- src/main/java —— 存放项目的.java 文件
- src/main/resources —— 存放项目资源文件,如 spring, hibernate 配置文件
- target —— 项目输出位置,编译后的class 文件会输出到此目录
- pom.xml——maven 项目核心配置文件
欢迎java热爱者了解文章,作者将会持续更新中,期待各位友友的关注和收藏,另外对编程感兴趣的友友们可以加以下群共同学习。群号:127871664