maven理解
一 maven功能理解
Maven是一种依赖管理工具,能轻松解决繁杂的Java类库的依赖关系(jar之间依赖)
maven灵魂核心
每个maven工程中都有一个pom.xml文件,定义工程所依赖的jar包、本工程的坐标、打包运行方式。Maven 把一个项目的结构和内容抽象成一个模型
maven有自己的声明周期
清理、初始化、编译、测试、报告 、打包、部署、站点生成
二 settings.xml
setting.xml 是maven的管理配置文件,包含了系统级别的配置和当前用户级别的配置
初学者一般都是用来配置本地仓库路径和中央仓库
一 localRepository
本地仓库地址,默认情况下,在C盘
<!-- 配置本地仓库地址 -->
<localRepository>D:/Maven/repository</localRepository>
pom.xml下的依赖会下载到本地仓库,进行本地管理
二 mirrors
镜像地址(中央仓库),,国外的仓库地址可能不是很稳定,访问速度较慢,将地址改为国内镜像地址,可以提高访问速度
<mirrors>
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>https://maven.aliyun.com/repository/public </url>
</mirror>
</mirrors>
可以添加多个< mirror>属性,设置多个中央仓库
三 maven核心pom.xml
一 坐标(gav)
maven的坐标可以标识一个项目工程,
坐标元素有groupId,artifactId, version等。
<groupId>com.hncj.mybatis</groupId> 公司域名倒写
<artifactId>ch01-maven</artifactId> 自定义项目名称
<version>1.0-SNAPSHOT</version> 自定义版本号
二 依赖配置
依赖配置是在pom文件中的配置的元素
在dependencies标签,可以包含一个或者多个dependency元素,一个dependecy标签便是一个依赖
每个依赖包含三个元素groupId、artifactId、version 基础坐标
例如:一个指定版本mysql驱动,对应的pom.xml坐标
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.22</version>
四 maven工程约定目录结构
每一个maven项目在磁盘中都是一个文件夹(例如项目 maven)
maven 中约定的目录结构:
Hello
|---src
|---|---main 放置主程序目录
|---|---|---java 放置程序的包和包中的Java文件
|---|---|---resources 放置Java程序中要使用的配置文件
|---|---test 放置测试程序代码和文件(可以没有这个目录)
|---|---|---java 放置测试程序的包和包中的Java文件
|---|---|---resources 放置测试Java程序中要使用的配置文件
|---pom.xml maven的核心文件(maven项目必须有)
maven核心概念
- 约定的目录结构
- src与pom.xml同级
- src/main
- java 主程序Java文件
- resources配置文件
- src/test
- java 主程序Java文件
- resources配置文件
- src/main
- src与pom.xml同级