1. Maven简介
Maven是专门用于治理和构建Java我的项目的工具,官网:http://maven.apache.org/ 。它的次要性能有:
1.1 标准化的我的项目构造
每一个开发工具(IDE)都有本人不同的我的项目构造,它们相互之间不通用。比方我再eclipse中创立的目录,无奈在idea中进行应用,这就造成了很大的不不便。
Maven提供了一套标准化的我的项目构造,所有的IDE应用Maven构建的我的项目齐全一样,所以IDE创立的Maven我的项目能够通用。
1.2 标准化的构建流程(编译,测试,打包,公布……)
如上图所示咱们开发了一套零碎,代码须要进行编译、测试、打包、公布,这些操作如果须要重复进行就显得特地麻烦,而Maven提供了一套简略的命令来实现我的项目构建。
1.3 不便的依赖管理机制
依赖治理其实就是治理你我的项目所依赖的第三方资源(jar包、插件)。比方你须要JDBC和Druid的话,就要去网上下载对应的依赖包,复制到我的项目中,还要将jar包退出工作环境这一系列的操作。如下图所示
而Maven应用规范的 ==坐标== 配置来治理各种依赖,只须要简略的配置就能够实现依赖治理。
如上图左边所示就是mysql驱动包的坐标,在我的项目中只须要写这段配置,其余都不须要咱们放心,Maven都帮咱们进行操作了。是不是简略了不少??
2. 仓库
咱们创立Maven我的项目,在我的项目中应用坐标来指定我的项目的依赖,那么依赖的jar包到底存储在什么中央呢?其实依赖jar包是存储在咱们的本地仓库中。而我的项目运行时从本地仓库中拿须要的依赖jar包。
仓库分类:
- 本地仓库:本人本地计算机上的一个目录
地方仓库:由Maven团队保护的寰球惟一的仓库。基本上你能想到的jar包,这里都有
- 地址: https://repo1.maven.org/maven2/
- 近程仓库(私服):个别由公司团队搭建的公有仓库
当我的项目中应用坐标引入对应依赖jar包后,首先会查找本地仓库中是否有对应的jar包:
- 如果有,则在我的项目间接援用;
- 如果没有,则去地方仓库中下载对应的jar包到本地仓库。
当然如果搭建有近程仓库,则jar包的查找程序则变为:
3. Maven装置配置
3.1 下载安装包
- 官网下载:https://maven.apache.org/down...
- 链接:https://pan.baidu.com/s/1vzSe... 提取码:0tiw
解压 apache-maven-3.6.1.rar 既装置实现
倡议解压缩到没有中文、特殊字符的门路下。记住你的目录。
解压缩后的目录构造如下:
- bin目录 : 寄存的是可执行命令。mvn 命令重点关注。
- conf目录 :寄存Maven的配置文件。
settings.xml
配置文件前期须要批改。 - lib目录 :寄存Maven依赖的jar包。Maven也是应用java开发的,所以它也依赖其余的jar包。
3.2 配置环境变量
此电脑
右键 --> 高级零碎设置
--> 高级
--> 环境变量
在零碎变量处新建一个变量 MAVEN_HOME
在 Path
中进行配置
关上cmd进行验证,呈现如图所示示意装置胜利:
3.3 配置本地仓库
批改 conf/settings.xml 中的 <localRepository> 为一个指定目录作为本地仓库,用来存储jar包。我的是:
当然如果你不配置的话,会有一个默认本地仓库目录:
3.4 配置阿里云私服
地方仓库在国外,所以下载jar包速度可能比较慢,而阿里公司提供了一个近程仓库,外面根本也都有开源我的项目的jar包。
批改 conf/settings.xml 中的 <mirrors>标签,为其增加如下子标签:
<mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf>central</mirrorOf> </mirror>
4. Maven常用命令
- compile :编译
- clean:清理
- test:测试
- package:打包
- install:装置
这不是我要具体讲的,具体参考其余材料
5. IDEA应用Maven
当前开发中咱们必定会在高级开发工具中应用Maven治理我的项目,而咱们罕用的高级开发工具是IDEA,所以接下来咱们会解说Maven在IDEA中的应用。
5.1 IDEA中配置Maven环境
咱们须要先在IDEA中配置Maven环境:
- 抉择 IDEA中 File --> Settings
- 搜寻Maven
- 设置 IDEA 应用本地装置的 Maven,并批改配置文件门路
5.2 Maven 坐标
创立Maven我的项目要用到Maven坐标,所以先讲一下什么是Maven坐标。
什么是Maven坐标?
- Maven 中的坐标是==资源的惟一标识==
- 应用坐标来定义我的项目或引入我的项目中须要的依赖
Maven 坐标次要组成
- groupId:定义以后Maven我的项目附属组织名称(通常是域名反写,例如:com.itheima)
- artifactId:定义以后Maven项目名称(通常是模块名称,例如 order-service、goods-service)
- version:定义以后我的项目版本号
如下图就是应用坐标示意一个我的项目:
==留神:==
- 下面所说的资源能够是插件、依赖、以后我的项目。
- 咱们的我的项目如果被其余的我的项目依赖时,也是须要坐标来引入的。
5.3 IDEA 创立 Maven我的项目
- 新建模块
创立好的我的项目目录构造如下:
- 编写 HelloWorld,并运行
6. 总结
局部内容来自 B站黑马程序员课程ppt
老师讲得很好,有趣味的能够听听。