1、概念介绍
Maven是一个项目管理工具,是apache的纯开源项目。原理是基于项目对象模型(POM)概念,利用中央信息片段能管理项目的构建、报告和文档步骤。
2、Maven功能
构建 | 文档生成 | 报告 | 依赖 | SCMs | 发布 | 分发 | 邮件列表
3、Maven目录结构及约束
- ${basedir} 存放pom.xml及所有子目录
- src
- main
- java 存放项目java源代码
- resources 存放项目资源
- webapp
- WEB-INF web应用目录,存放jsp和web.xml,本地图片等
- test
- java 存放测试java源代码
- resources 存放测试项目资源
- target 打包输出目录
- classes 编译输出目录
- test-classes 测试编译输出目录
补充:
Test.java:Maven自动运行符合该命令规则的测试类;
~/.m2/repository:Maven默认本地仓库的位置。
4、Maven特点及优势
特点:
(1)项目设置遵循统一原则;
(2)任意工程可共享;
(3)依赖管理可自动更新,且可不断增长库;
(4)可扩展,轻松编写java或脚本语言插件;
(5)基于模型构建:将任意数量的项目构建到预定义的输出类型中,如JAR、WAR或基于项目数据分发;
(6)项目信息一致性:使用与构建过程相同的元数据,Maven可生成一个PDF或者网站。
(7)发布管理和发布单独的输出:可以与源代码系统集成(SVN和GIT),并可基于某个标签版本发布项目。Maven也可以单独发布输出,如jar、war等。
(8)向后兼容:旧版本的Maven中模块可轻松迁移到Maven3中;
(9)并行构建和完善的错误报告。
优势:
(1)项目构建自动化;
(2)依赖管理一体化。
5、Maven组成包括
(1)项目对象模型(pom):小段描述信息来管理项目(pom.xml);
(2)项目生命周期(Project Lifecycle)
(3)依赖管理系统(Dependency Management System)
6、Maven的安装及环境配置
JDK与版本匹配要求:
Maven3.3 -> JDK1.7 +
Maven3.2 -> JDK1.6 +
Maven3.0/Maven3.1 -> JDK1.5 +
Maven下载地址:http://maven.apache.org/download.cgi
下载对应版本的maven安装包,并解压到指定的目录
(1)windows存放路径(以我本机为例):D:\maven\maven3.6.1
设置环境变量:计算机 -> 属性 -> 高级系统配置 -> 环境变量,新建系统变量MAVEN_HOME
编辑系统变量Path,添加变量值:;%MAVEN_HOME%\bin
验证环境配置是否成功:
(2)Linux下安装Maven
# wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
# tar -xvf apache-maven-3.3.9-bin.tar.gz
# sudo mv -f apache-maven-3.3.9 /usr/local/
# sudo vim /etc/profile
在文件末尾添加代码:
export MAVEN_HOME=/usr/local/apache-maven-3.3.9
export PATH=${PATH}:${MAVEN_HOME}/bin
保存文件
# source /etc/profile
# mvn -v