一、Maven介绍
1.什么是Maven?
Maven 是一个项目管理工具,它包含了一个项目对象模 型 (POM:Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标 (goal)的逻辑;
2.Maven的依赖管理
maven 工程中不直接将 jar 包导入到工程中,而是通过在 pom.xml 文件中添加所需 jar 包的坐标;maven的依赖管理也就是管理jar包的过程;
二、Maven的使用
1.Maven的安装
1)下载Maven
地址 :http://archive.apache.org/dist/maven/maven-3/
2)安装
将 Maven 解压到一个没有中文没有空格的路径下:
* bin:存放了 maven 的命令
* boot:存放了一些 maven 本身的引导程序,
* conf:存放了 maven 的一些配置文件
* lib:存放了 maven 本身运行所需的一些 jar 包
注意:JDK和Maven版本要统一
3)Maven配置变量
配置 MAVEN_HOME ,变量值就是你的 maven 安装 的路径(bin 目录之前一级目录)
注意:这个目录就是之前你解压 maven 的压缩文件包在的的目录,最 好不要有中文和空格
4)Maven版本测试
cmd---------------> 输入 mvn -v
2.Maven仓库
1)本地仓库 :用来存储从远程仓库或中央仓库下载的插件和 jar 包,项目使用一些插件或 jar 包, 优先从本地仓库查找 ;
2)远程仓库:如果本地需要插件或者 jar 包,本地仓库没有,默认去远程仓库下载;
3)中央仓库 :在 maven 软件中内置一个远程仓库地址 http://repo1.maven.org/maven2 ,它是中 央仓库,服务于整个互联网;
4)本地仓库的配置:到你下载的Maven 的conf/settings.xml 文件中配置本地仓库位置 :
3.Maven工程的认识
1)Maven工程的目录结构
进入src目录后:
4.Maven常用命令
1)compile(编译):作用是将 src/main/java 下的文件编译为 class 文件输出到 target 目录下;
cmd进入命令状态,执行 mvn compile
2)test(测试):会执行src/test/java下的单元测试类。
cmd进入命令状态,执行 mvn test
3)clear(清理):执行 clean 会删除 target 目录及内容。
4)package(打包):对于 java 工程执行 package 打成 jar 包,对于web 工程打成war 包;
5)install(安装):将 maven 打成 jar 包或 war 包发布到本地仓库。
6)tomcat:run(运行maven工程)
5.Maven的生命周期
* maven 对项目构建过程分为三套相互独立的生命周期。
1)Clean Lifecycle 在进行真正的构建之前进行一些清理工作。
2)Default Lifecycle 构建的核心部分,编译,测试,打包,部署等等。
3)Site Lifecycle 生成项目报告,站点,发布站点。
6.Maven的概念模型
1)项目对象模型
一个 maven 工程都有一个 pom.xml 文件,通过 pom.xml 文件定义项目的坐标、项目依赖、项目信息、 插件目标等;
2)依赖管理系统
通过 maven 的依赖管理对项目所依赖的 jar 包进行统一管理;
<!-- 依赖关系 --> <dependencies> <!-- 此项目运行使用 junit,所以此项目依赖 junit --> <dependency> <!-- junit 的项目名称 --> <groupId>junit</groupId> <!-- junit 的模块名称 --> <artifactId>junit</artifactId> <!-- junit 版本 --> <version>4.9</version> <!-- 依赖范围:单元测试时使用 junit --> <scope>test</scope> </dependency>
3)一个项目的生命周期
7.依赖范围