01-Maven入门
1、Maven
1.1、Maven概念
- 背景
- 在一个项目中经常需要手动导入jar包,当需要的jar包数量多的时候,非常难以管理;同时还需要人为去下载各种jar包。同时不同IDE之间,项目结构不一样,造成迁移性低下,不通用的问题
- 因此Maven被创造出来解决这个难题
- 概念
- Maven是专门用于管理和构建Java项目的工具,其主要功能有:
- 提供了一套标准化的项目结构
- Maven提供了一套标准化的项目结构,所有IDE使用Maven创建的项目结构完全一样,这样所有IDE创建的Maven项目就可以通用
- 提供了一套标准化的构建流程(编译,测试,打包,发布….)
- 提供了一套依赖管理机制
- Maven使用标准化的坐标配置来管理各种依赖
- 只需要简单的配置就可以完成依赖管理
- 提供了一套标准化的项目结构
- Maven是专门用于管理和构建Java项目的工具,其主要功能有:
1.2、Maven模型
1.3、Maven仓库
- 仓库分类
- 本地仓库:自己计算机上的一个目录
- 中央仓库:由Maven团队维护的全球唯一的仓库地址:https://repo1.maven.org/maven2/
- 远程仓库(私服):一般由公司团队搭建的私有仓库
- 当项目中使用坐标引入对应依赖jar包后,首先会查找本地仓库中是否有对应的jar包
- 如果没有,则去中央仓库中下载对应的jar包到本地仓库。
- 如果有,则在项目直接引用
- 还可以搭建远程仓库,将来jar包的查找顺序如下所示
- 本地仓库 –> 远程仓库 –> 中央仓库
1.4、Maven安装
- 1.Maven属于绿色版软件,解压即安装完成(PS:不要放在有汉字的目录)
- 2.解压Maven仓库,放到某个目录中
1.5、Maven配置
-
1.配置本地仓库
-
修改
conf/setting.xml
中53行的为一个指定目录-
<localRepository>D:developmvn_resp</localRepository>
-
-
-
2.配置阿里云私服
-
修改
conf/setting.xml
中146行的标签,为其添加如下子标签-
<mirror> <id>nexus-aliyun</id> <mirrorOf>*</mirrorOf> <url>http://maven.aliyun.com/nexus/content/groups/public</url> </mirror>
-
-
-
3.更改默认JDK版本
-
Maven默认使用的是JDK1.5,修改JDK版本,可以在187行的标签添加如下信息
-
<profile> <id>jdk-1.8</id> <activation> <activeByDefault>true</activeByDefault> <jdk>1.8</jdk> </activation> <properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion> </properties> </profile>
-
-
1.6、IDEA配置Maven
1.7、IDEA创建Maven模块
1.8、Maven依赖管理
- Maven坐标的概念
- Maven中的坐标是资源的唯一表示
- 使用坐标来定义项目或引入项目中需要的依赖
- Maven坐标的主要组成
groupId
- 定义当前Maven项目隶属组织名称(通常是域名反写
artifactId
- 定义当前Maven项目名称(通常是模块名称
version
- 定义当前项目版本号
1.8.1、使用坐标导入jar包
1.8.2、使用坐标导入jar包(快捷方式)
1.8.3、在线查询jar包依赖
1.8.4、Maven依赖范围
1.9、Maven常用命令
- Maven环境变量配置
- 命令行执行Maven命令
1.10、Maven生命周期
- Maven构建项目生命周期描述的是一次构建过程经历了多少个事件
- Maven默认的构建生命周期过程