目录
一 MAVEN
二 三个仓库
1. 本地仓库(Local Repository)
2. 私有仓库(Private Repository,公司内部仓库)
3. 远程仓库(Remote Repository)
依赖查找流程(优先级)
三 下载教程
四 IDEA配置全局环境
一 MAVEN
MAVEN 是一款主要用于Java 项目管理的工具,它通过标准化的项目结构、依赖管理和构建流程,帮助开发者更高效地进行项目开发、构建、测试和部署。
其核心功能体现在以下几个方面:
- 项目结构标准化:提供了统一的项目目录结构,无论开发者身处何地,只要遵循 MAVEN 的规范,就能快速理解项目的组成部分,减少沟通成本。例如,源代码放在
src/main/java
目录,测试代码放在src/test/java
目录。 - 依赖管理:自动下载、管理项目所需的第三方库(依赖),并处理依赖之间的传递关系,避免版本冲突等问题。开发者只需在配置文件(pom.xml)中声明所需依赖的坐标(groupId、artifactId、version),MAVEN 就会从中央仓库或指定仓库中获取相应的库。
- 构建自动化:支持编译、测试、打包(如生成 JAR、WAR 文件)、安装、部署等一系列构建过程的自动化执行。通过简单的命令(如
mvn clean package
),就能完成从清理到打包的整个流程。
此外,MAVEN 还具有插件机制,开发者可以通过添加各种插件来扩展其功能,满足不同项目的特定需求。它广泛应用于 Java 开发领域,是提高项目开发效率和可维护性的重要工具。
二 三个仓库
在 Maven 中,本地仓库、私有仓库(公司内部仓库)和远程仓库(如 Maven 中央仓库)构成了依赖管理的核心体系,它们的协作流程和作用如下:
1. 本地仓库(Local Repository)
- 位置:默认在用户目录下的
.m2/repository
(可通过settings.xml
中的<localRepository>
配置修改)。 - 作用:存储项目下载的依赖缓存,以及本地构建生成的 jar 包(如
mvn install
会将项目打包后放入本地仓库)。 - 优先级:Maven 查找依赖时,首先检查本地仓库,如果存在则直接使用,避免重复下载。
2. 私有仓库(Private Repository,公司内部仓库)
- 常见工具:如 Nexus、Artifactory 等,部署在公司内网。
- 作用:
- 存储公司内部开发的共享组件(如公共工具类、基础框架),供内部项目复用。
- 缓存远程仓库的依赖,避免所有开发者重复从外部仓库下载,节省带宽并提高速度。
- 管理第三方非开源依赖(如某些商业库),这些依赖无法从公共仓库获取。
- 配置方式:需在项目
pom.xml
或全局settings.xml
中配置私有仓库地址,让 Maven 知道从这里查找依赖。
3. 远程仓库(Remote Repository)
- 最常用:Maven 中央仓库(Central Repository:),包含大量开源项目的依赖。
- 其他类型:第三方开源库的专属仓库(如 Spring 仓库、Google 仓库等)。
- 作用:提供公开的依赖资源,当本地仓库和私有仓库都没有所需依赖时,Maven 会从远程仓库下载。
依赖查找流程(优先级)
当项目需要某个依赖时,Maven 的查找顺序为:
- 本地仓库 → 若存在,直接使用;
- 私有仓库 → 若本地没有,会请求公司私有仓库,若存在则下载到本地仓库并使用;
- 远程仓库 → 若私有仓库也没有,会从配置的远程仓库(如中央仓库)下载,并存入本地仓库和私有仓库(如果私有仓库开启缓存)。
通过这种多层仓库结构,既能提高依赖获取效率,又能保证公司内部资源的安全管理和复用。
三 下载教程
1.选择官网下载(maven)
Welcome to Apache Maven – Maven
选择阿帕奇(著名的开源框架非营利性组织)
下载解压后:
这里需要配置conf文件夹里面的settings文件:
首先大概在50-60行左右的位置 配置一个你自己的jar仓库地址用来保存以后下载的maven依赖对应的jar包 要创建一个仓库文件夹所以 例如:
然后把地址放在 localRepository这个位置:
接下来配置一个远程仓库(这里用aliyun(阿里云镜像))
<mirror><id>aliyunmaven</id><mirrorOf>*</mirrorOf><name>阿里云公共仓库</name><url>https://maven.aliyun.com/repository/public</url>
</mirror>
一定一定不要漏或者多删东西!!!!!!否则会导致maven到集成环境中无法加载依赖!!!
然后到这里 配置一下环境变量:
打开高级系统设置(此电脑属性打开):
注意啊 是系统变量 当然path里面也可以直接引用 但是方便管理就这样:
在里面创建一个这样的
保存退出:
win + R 命令行输入cmd 再输入mvn -v显示你下载的maven版本就成功了!:
2.这里是博主自己的maven 3.9.6 下载地址
http://通过网盘分享的文件:Maven安装包 链接: https://pan.baidu.com/s/1Ueu3nFZcQSGytmaaYY9Z6w?pwd=c3xk 提取码: c3xk --来自百度网盘超级会员v2的分享
四 IDEA配置全局环境
打开IDEA主页面:
点击ALL settings:
点击Build Tools中的Maven:
第一个是maven的源路径 选择自己下载的
第二个是maven的配置文件,选择源路径对应目录下的settings文件
第三个是maven的自己的jar仓库,你以后配置的maven依赖jar包先从本地仓库获取
然后再打开 Importing和Runner 把jdk和jre换成自己的:
还有个编码格式在Complier(编译)里面:
全部搞定之后 你创建一个新项目(maven项目或者空项目乃至Spring项目都会有对应的maven仓库配置):
你的项目路径里面有个pom.xml里面包含基础依赖:
打开是这样的开头
这段XML代码定义了Maven项目的基本坐标信息:
- `<groupId>`:组织ID,标识项目所属的组织或公司
- `<artifactId>`:项目ID,标识项目在组织中的唯一名称
- `<version>`:版本号,SNAPSHOT表示开发中的快照版本
这三项构成了Maven项目的唯一标识:
LifeStyle指的是maven的生命周期,Plugins指的是是插件,执行生命周期的时候就会调用对应插件,然后你下载的依赖jar包会显示在Dependencies:
你的目录一般是以下这种:
这是一个基于 Maven 构建的 Java 项目(maven-project01
)在开发工具(如 IntelliJ IDEA)中的目录结构。
java-web
:是项目所在的父目录(工作空间类的概念)。.idea
:是 IDEA 为项目生成的配置目录,存储项目的设置、历史记录等 IDE 相关信息。maven-project01
:是具体的 Maven 项目模块。src
:源代码目录,遵循 Maven 约定,分为main
(主代码)和test
(测试代码)两部分。main
:存放项目的主要代码。java
:用于存放 Java 源代码文件,开发人员编写的业务逻辑、类等都放在这里。resources
:存放项目的资源文件,比如配置文件(.properties
、.xml
等)、静态资源等。
test
:存放测试相关的代码。java
:存放 Java 测试代码,比如单元测试类,用于验证main/java
中代码的正确性。com.itheima
:是测试代码中的包名,用于组织测试类,通常和主代码的包结构对应,方便管理。
target
:Maven 构建项目时生成的输出目录,编译后的字节码文件、打包生成的 JAR/WAR 文件等都会放在这里。pom.xml
:Maven 项目的核心配置文件,用于定义项目的坐标(groupId、artifactId、version)、依赖(引入其他库)、构建插件等,Maven 依据此文件进行项目的构建、依赖管理等操作。
:
到这里 基本就可以构建你的maven项目了