Maven简介
Maven是一款自动化构建工具,专注服务于java平台的项目构建和依赖管理。
1、maven可以管理jar包及其各个版本,并且可以自动下载和引入项目中
2、maven可以把jar包依赖的包自动下载并引入项目中
3、maven可以编译代码,测试代码
4、打包文件,形成jar文件,或是war文件
5、部署项目
项目的构建:构建是面向过程的,包括项目的编译,测试,运行,打包,部署等等
Maven支持的构建包括:
1、清理,把之前项目编译的东西删除,为新的编译代码做准备
2、编译,把程序的源代码编译成可执行文件。(批量进行)
3、测试,maven可以执行测试程序代码,验证所需的功能是否正确。(批量进行)
4、报告,生成测试结果文件
5、打包,把项目中的所有class文件,配置文件等所有资源文件放到一个压缩文件中。
6、安装,把打包好的文件jar,war安装到本机仓库
7、部署,把程序安装好可以执行
Maven核心概念
1、POM:一个文件pom.xml,项目对象模型,把一个项目当作一个模型来使用。控制maven构建项目的过程,管理jar依赖。
2、约定的目录结构:maven项目的目录和文件的位置都是规定的。
3、坐标:是一个唯一的字符串,用来表示资源。
4、依赖管理:管理项目中的jar包
5、仓库管理:资源存放的位置
6、生命周期:maven构建项目的过程
7、插件和目标:执行maven构建的时候用的 工具
8、继承
9、聚合
Maven安装
1、下载解压
2、配置环境变量
MAVEN_HOME=d:/apache-maven-3.3.9
path=%MAVEN_HOME%/bin;
3、验证是否安装成功
mvn -v
Maven工程约定的目录结构
仓库
存放maven使用的jar包和我们项目使用的jar包
仓库的分类:
本地仓库:个人计算机上的一个文件夹,存放jar包
远程仓库:在互联网上使用网络才能使用的仓库。
1、中央仓库:最权威的,所有开发人员都共享使用的一个集中仓库
2、中央仓库的镜像:就是中央仓库的备份,分布在各大州,重要城市。减轻中央仓库的压力
3、私人服务器:在公司内部,局域网中使用,不对外使用
仓库的使用:
maven仓库的使用不需要认为参与
maven首先查本地仓库—>私服—>镜像—>中央仓库
POM文件
项目对象模型,Maven 把一个项目的结构和内容抽象成一个模型,在xml 文件中进行声明,以方便进行构建和描述,pom.xml 是Maven 的灵魂。
1、坐标,唯一值,在互联网中唯一标识一个项目
1 | <groupId>com.maven</groupId><!-- 公司域名的倒写--> |
2、packaging:打包后压缩文件的扩展名,默认为jar,web应用是war
3、依赖dependencies和dependency,相当于java中的import
1 | <dependencies> |
4、设置属性properties
5、build:与构建相关的配置信息
IDEA集成Maven
选择Settings for New Projects再次设置
创建Maven版的普通的java项目
使用模板创建:
项目结构:
创建Maven版的web项目
项目结构:
添加依赖:
1 | <dependency> |
创建一个Servlet程序
再运行环境中添加Tomcat服务器: