一、maven的简介
1.1 maven的作用
maven是一个项目依赖管理以及生命周期管理的工具软件
项目依赖的管理(也就是通常的jar包的管理)
一般我们在项目中使用jar包,首先要去下载所需要的jar包,然后复制在WEB-INF/lib下,然后添加到项目当中,步骤多繁琐没有可利用性,但是通过maven只需要导入相对应的依赖就可以使用jar包,简化步骤。
项目的生命周的管理
maven可以很好的管理我们整个项目的生命周期,包括清理缓存,校验,编译,测试,打包,安装,部署
聚合工程
在学完框架以后,可以使用maven很好的去整合我们的开发框架
二、maven安装以及环境变量的配置
2.1maven的下载
下载地址:maven.apache.org/download,cgi
2.2maven的安装
解压压缩包即可使用
2.3maven的目录结构
- bin:存放maven提供的指令文件
- boot:包含了一个类加载框架的文件
- conf:包含了一个核心配置文件setting.xml文件(很重要)
- lib:maven运行的必要jar包
2.4maven的环境配置
即java环境变量一样,不多说
三、maven的项目结构
使用maven的的好处可以适用于每个开发工具,它们的项目是一样的
3.1maven的项目结构
src目录为项目的根目录,指正错误应该是pom.xml文件
main目录下面有两个子目录,其中java目录存放Java代码,resources存放配置文件和静态资源,相当于传统项目的web目录
3.2 pom.xml文件的介绍
pom文件的英文全称为(Project Object Model)Maven可以根据pom文件的配置对此项目进行依赖管理;也就是说项目中需要依赖,直接在pom.xml进行配置即可
<?xml version="1.0" encoding="utf-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<!--指定项目模型版本-->
<modelVersion>4.0.0</modelVersion>
<!--指定项目的标识:G 企业标识 A 项目标识 V 版本-->
<groupId>com.xinhua</groupId>
<artifactId>fmwy</artifactId>
<version>1.0.0</version>
<!--配置当前项目的依赖-->
<dependencies>
</dependencies>
</project>
如果需要在当前项目中添加依赖,只需在pom.xml文件中进行依赖配置即可
四、依赖管理
4.1 Maven依赖管理的流程
4.2 Maven仓库介绍
- 本地仓库:就是本地计算机上的某个文件夹(可以是自定义的任何文件夹)
- 远程仓库:就是远程主机上的jar文件仓库
- 中央仓库: maven官方提供的仓库,包含了所需的一切依赖(免配置)
- 公共仓库: 除了中央仓库以外的第三方仓库都是公共仓库,例如aliyun(需要配置)
- 私服:企业搭建的供内部使用的maven仓库
4.3 Maven仓库配置
在maven_home/conf/settings.xml中进行配置,找到对应的仓库标签
配置本地仓库
<localRepository>d:\repo</localRepository>
配置公共仓库
<mirrors> <mirror> <id>nexus-aliyun</id> <mirrorOf>central</mirrorOf> <name>Nexus aliyun</name> <url>http://maven.aliyun.com/nexus/content/groups/public</url> </mirror> </mirrors>
五、项目生命周期管理
5.2 生命周期管理指令
在项目的根目录下执行mvn指令(此目录下必须包含pom.xml)
- 清除缓存
mvn clean
- 检查
mvn check
- 编译
mvn compile
- 测试
mvn test
- 打包
mvn package
- 安装
mvn install
- 部署
mvn deploye
六、基于编译器的的Maven使用
6.1 在IDEA中关联Maven
说明:
IDEA本身集成了Maven,考虑到IDEA和Maven版本的兼容性,Idea不建议配置比默认版本更新的版本,建议使用idea自带的maven。
6.2 使用IDEA创建Maven项目
6.2.1 Java项目
创建Java项目 |
---|
6.2.2 web项目
-
创建maven项目:maven-demo2
-
在pom.xml文件设置打包方式为war
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.xinhua</groupId>
<artifactId>maven-demo2</artifactId>
<version>1.0.0</version>
<!--设置项目打包方式为war-->
<packaging>war</packaging>
</project>
-
完成web项目结构
- 配置web组件—Tomcat
-
-
部署web项目
6.3 在IDEA中使用Maven进行依赖管理
6.3.1 查找依赖坐标
- https://mvnrepository.com/
6.3.2 添加依赖
- 将依赖的坐标配置到项目的pom.xml文件dependencies标签中
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.qfedu</groupId>
<artifactId>maven-demo2</artifactId>
<version>1.0.0</version>
<!--设置项目打包方式为war-->
<packaging>war</packaging>
<dependencies>
<!--在此位置配置项目中所需依赖的坐标 GAV-->
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.5</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.18</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
6.3.3 依赖范围
在通过dependency添加依赖时,可以通过
scope
标签配置当前依赖的适用范围
- test 只在项目测试阶段引入当前依赖(编译、测试)
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13.2</version>
<scope>test</scope>
</dependency>
- runtime 只在运行时使用(运行、测试运行)
- provided 在(编译、测试、运行)
- compile 在(编译、测试、运行、打包)都引入
6.4 在IDEA中使用Maven进行项目构建
6.4.1 Maven项目构建生命周期说明
- clean 清理缓存 清理项目生成的缓存
- validate 校验 验证项目需要是正确的(项目信息、依赖)
- compile 编译 编译项目专供的源代码
- test 测试 运行项目中的单元测试
- package 打包 将项目编译后的代码打包成发布格式
- verify 检查 对集成测试的结果进行检查、确保项目的质量是达标的
- install 安装 将包安装到maven的本地仓库,以便在本地的其他项目中可以引用此项目(聚合工程)
- deploy 部署 将包安装到私服的仓库,以供其他开发人员共享
6.4.2 IDEA进行生命周期管理
-
可视化
-
终端指令
选择项目名称—右键—Open in Terminal
mvn clean
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。