Maven 安装配置(完整教程)
文章目录
- 一、Maven 简介
- 二、下载 Maven
- 三、配置 Maven
- 3.1 配置环境变量
- 3.2 Maven 配置
- 3.3 IDEA 配置
- 四、结语
一、Maven 简介
Maven 是一个基于项目对象模型(POM)的项目管理和自动化构建工具。它主要服务于 Java 平台,但也支持其他编程语言。Maven 的核心优势在于其依赖管理和项目构建的自动化,允许开发者通过简单的配置来管理项目的构建、文档生成、报告、依赖、源代码管理、发布和分发等步骤。
二、下载 Maven
进入 Maven 官方网站,找到自己电脑对应系统的 Maven 压缩包版本下载即可,以 Windows 系统为例:


将下载好的 Maven 压缩包解压,得到下面文件夹:

进入文件夹,创建 repo 文件夹,用于存放 Maven 本地仓库依赖,将路径复制下来:

三、配置 Maven
3.1 配置环境变量
返回桌面,右键 此电脑 >> 属性 >> 高级系统设置 >> 环境变量,在系统变量模块下新建一个系统变量,具体如下:

之后在系统变量模块下找到 Path 系统变量,操作如下:
变量值:%MAVEN_HOME%\bin,可以点击上移,改变系统环境变量的加载顺序。

完成后,输入 Win + R 运行 CMD ,输入 mvn --version(查看 maven 版本),如下所示表示配置成功:。

提示:如果普通用户不行的话,可以通过管理员的身份打开 CMD。
3.2 Maven 配置
进入 apache-maven-3.9.9 文件夹,进入 config 文件夹,点击 settings.xml 文件。

(1)配置 Maven 本地仓库依赖的存储位置:
进入 apache-maven-3.9.9 文件夹下的 repo 文件夹,将路径复制下来,然后返回 settings.xml 文件:

在 settings.xml 的第 56 行,输入下面内容,本地路径每个人都不同:
<localRepository>E:\Maven\apache-maven-3.9.9\repo</localRepository>

(2)配置阿里云服务器镜像
由于 Maven 的默认服务器在国外所以下载依赖会很慢,所以我们需要将其改为国内的阿里云服务器,一般使用的是阿里云的镜像。
在 settings.xml 的第 160 行,我是打了空格所以会多几行,输入下面命令:
<!-- 阿里云镜像 -->
<mirror><id>aliyunmaven</id><mirrorOf>*</mirrorOf><name>阿里云公共仓库</name><url>https://maven.aliyun.com/repository/public</url>
</mirror>

(3)配置 JDK 版本
在 Maven 中配置 JDK 版本,可以确保项目在正确的 JDK 环境下进行构建和运行,避免因 JDK 版本不兼容而导致的编译错误或运行时问题。
在 settings.xml 的 第 200 行,要根据自己下载的 JDK 配置,我这里以 JDK 17 和 JDK 8 为例,输入下面命令:
- JDK 17
<!-- JDK17 -->
<profile><id>jdk-17</id><activation><activeByDefault>true</activeByDefault><jdk>17</jdk></activation><properties><maven.compiler.source>17</maven.compiler.source><maven.compiler.target>17</maven.compiler.target><maven.compiler.compilerVersion>17</maven.compiler.compilerVersion></properties>
</profile>

- JDK 1.8
<!-- JDK1.8 -->
<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>

(4)完整的 settings.xml
如果嫌麻烦可以直接将 settings.xml 文件的内容完全更换为下面我准备好的的内容:
注意:本地路径要看自己的情况配置,JDK 的话更改其版本的数字就可以了。
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.2.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.2.0 https://maven.apache.org/xsd/settings-1.2.0.xsd"><!-- 本地依赖存放位置 --><localRepository>E:\Maven\apache-maven-3.9.9\repo</localRepository><mirrors><!-- 阿里云镜像 --><mirror><id>aliyunmaven</id><mirrorOf>*</mirrorOf><name>阿里云公共仓库</name><url>https://maven.aliyun.com/repository/public</url></mirror></mirrors><profiles><!-- JDK17 --><profile><id>jdk-17</id><activation><activeByDefault>true</activeByDefault><jdk>17</jdk></activation><properties><maven.compiler.source>17</maven.compiler.source><maven.compiler.target>17</maven.compiler.target><maven.compiler.compilerVersion>17</maven.compiler.compilerVersion></properties></profile></profiles>
</settings>
注意:操作完后,记得保存 settings.xml 文件。
(5)检查是否配置成功
输入 Win + R 运行 CMD ,输入 mvn help:system(打印 Maven 信息),如下所示表示配置成功:

3.3 IDEA 配置
打开 IDEA,在欢迎界面,依次点击 Customize >> All settings... :

在左上角的搜索拦中输入 Maven,找到这个,按照自己的情况配置:



在左上角输入 Java Compiler,找到这个,按照自己的 JDK 情况配置:

配置好后记得点击 Apply,最后点击 OK 即可。
四、结语
这篇文章大概 5000 字,所以操作起来还是需要一定的时间,不要心急,我是把自己的 Maven 删除后,跟着文章重新配置了的,在配置 Maven 那一块,需要细心一点,如果有什么问题,欢迎在评论区中评论。
至此,本文结束,如果这篇文章对您有所帮助,希望可以点赞、收藏加关注,感谢。

相关文章:
Maven 安装配置(完整教程)
文章目录 一、Maven 简介二、下载 Maven三、配置 Maven3.1 配置环境变量3.2 Maven 配置3.3 IDEA 配置 四、结语 一、Maven 简介 Maven 是一个基于项目对象模型(POM)的项目管理和自动化构建工具。它主要服务于 Java 平台,但也支持其他编程语言…...
w196Spring Boot高校教师科研管理系统设计与实现
🙊作者简介:多年一线开发工作经验,原创团队,分享技术代码帮助学生学习,独立完成自己的网站项目。 代码可以查看文章末尾⬇️联系方式获取,记得注明来意哦~🌹赠送计算机毕业设计600个选题excel文…...
Flutter初相识
资料 1、中文官网:安装和环境配置 | Flutter 中文文档 - Flutter 中文开发者网站 - Flutter 2、线上编写网站:DartPad 构建第一个Flutter应用 class MyApp extends StatelessWidget {const MyApp({Key? key}) : super(key: key);overrideWidget bui…...
(1/100)每日小游戏平台系列
每日小游戏平台 项目简介以及地址 准备开发一个一百天小游戏平台,使用Flask构建的简单游戏导航网站,无需登录,让大家在返工的同时也可以愉快的摸鱼玩耍。 每天更新一个小游戏上传,看看能不能坚持一百天。 这些小游戏主要使用前端…...
IMX6ULL环境搭建遇到的问题和解答更新
IMX6ULL环境搭建遇到的问题 开发板:正点原子IMX6ULL 终端软件串口控制:MobaXterm 1、网络环境搭建三方互ping不通 电脑无网口,使用绿联USB转网口,接网线直连开发板,电脑WiFi上网 按文档设置的 IP 地址,以…...
具身智能学习规划
具身智能(Embodied Intelligence)强调智能体通过身体与环境的动态交互实现学习和决策,是人工智能、机器人学、认知科学和神经科学交叉的前沿领域。其核心在于打破传统AI的“离身认知”,将智能与物理实体、感知-运动系统紧密结合。…...
kafka生产端之拦截器、分区器、序列化器
文章目录 拦截器序列化器分区器 拦截器 拦截器(Interceptor)是早在Kafka0.10.0.0中就已经引入的一个功能,Kafka一共有两种拦截器:生产者拦截器和消费者拦截器。本节主要讲述生产者拦截器的相关内容,有关消费者拦截器的…...
BFS算法篇——广度优先搜索,探索未知的旅程(上)
文章目录 前言一、BFS的思路二、BFS的C语言实现1. 图的表示2. BFS的实现 三、代码解析四、输出结果五、总结 前言 广度优先搜索(BFS)是一种广泛应用于图论中的算法,常用于寻找最短路径、图的遍历等问题。与深度优先搜索(DFS&…...
FPGA VGA timing
概念 VGA(Video Graphics Array)时序是控制VGA接口显示图像的关键参数,它主要包括行时序和场时序两部分。以下是对VGA时序的详细解释: 一、VGA接口简介 VGA接口是IBM公司在1987年推出的一种使用模拟信号的视频传输标准,具有成本低、结构简单、应用灵活等优点,至今仍被广…...
pytest生成报告no tests ran in 0.01s
除了基本的环境配置、用例名要以test_开头,有个地方是我自己忽略了,在执行时没有指定用例文件,所以没有找到。 if __name__ __main__:pytest.main(["testcases/test_demo.py","-svq", __file__, --alluredir./allure-r…...
Django开发入门 – 0.Django基本介绍
Django开发入门 – 0.Django基本介绍 A Brief Introduction to django By JacksonML 1. Django简介 1) 什么是Django? 依据其官网的一段解释: Django is a high-level Python web framework that encourages rapid development and clean, pragmatic design. …...
数巅科技中标科学城数科集团AI辅助企业数字化转型评估诊断
自2023年以来,财政部和工信部连续发布通知,强调要做好中小企业数字化转型城市试点工作,鼓励试点城市大力支持优质数字化服务商,研发攻关一批“小快轻准”数字化产品和解决方案,助力制造业关键领域的中小企业实现数字化…...
Linux proc虚拟文件系统
文章目录 简介proc常用节点pid节点procfs接口参考 简介 测试环境:Linux dev-PC 5.18.17-amd64-desktop-hwe #20.01.00.10 SMP PREEMPT_DYNAMIC Thu Jun 15 16:17:50 CST 2023 x86_64 GNU/Linux proc虚拟文件系统是linux内核提供的一种让用户和内核内部数据结构进行交…...
idea整合deepseek实现AI辅助编程
1.File->Settings 2.安装插件codegpt 3.注册deepseek开发者账号,DeepSeek开放平台 4.按下图指示创建API KEY 5.回到idea配置api信息,File->Settings->Tools->CodeGPT->Providers->Custom OpenAI API key填写deepseek的api key Chat…...
局域网内别的电脑怎么连接到对方的mysql数据库
要让局域网内的其他电脑连接到一台主机上的 MySQL 数据库,你需要进行一些配置,包括 MySQL 服务器的设置、权限调整,以及客户端连接的步骤。以下是详细的步骤说明: 1. 确保 MySQL 服务器允许远程连接 默认情况下,MySQL 服务器可能只允许本地连接(localhost)。你需要修改…...
加速汽车软件升级——堆栈刷写技术的应用与挑战
一、背景和挑战 | 背景: 当前汽车市场竞争激烈,多品牌并存,新车发布速度加快,价格逐渐降低,功能日益多样化。随着车辆功能的不断提升与优化,ECU(电子控制单元)的代码量也随之增加&…...
2. UVM的基本概念和架构
文章目录 前言1. UVM的基本概念1.1 UVM的核心组件1.2 UVM的基本架构1.3 UVM的工作流程 2. UVM的架构2.1 UVM的层次结构2.2 UVM的组件交互 3. 总结 前言 首先,得确定UVM的基本概念和架构包含哪些关键部分。我回忆起UVM的核心组件,比如uvm_component、uvm…...
【力扣】138.随机链表的复制
AC截图 题目 代码 使用哈希存储<旧节点,新结点> /* // Definition for a Node. class Node { public:int val;Node* next;Node* random;Node(int _val) {val _val;next NULL;random NULL;} }; */class Solution { public:Node* copyRandomList(Node* hea…...
防火墙、堡垒机和NAT
在网络安全中,防火墙、堡垒机(Cloud Monitoring and Protection Machine)和网络地址转换(NAT) 是三种核心设备,用于防御外来的访问和破坏性攻击。然而,这三种设备本身也可能面临多种网络安全威胁…...
归一化与伪彩:LabVIEW图像处理的区别
在LabVIEW的图像处理领域,归一化(Normalization)和伪彩(Pseudo-coloring)是两个不同的概念,虽然它们都涉及图像像素值的调整,但目的和实现方式截然不同。归一化用于调整像素值的范围,…...
动态表格html
题目: 要求: 1.表格由专业班级学号1-10号同学的信息组成,包括:学号、姓 名、性别、二级学院、班级、专业、辅导员; 2.表格的奇数行字体为黑色,底色为白色;偶数行字体为白色,底 色为黑…...
通过k8s请求selfsubjectrulesreviews查询权限
当前是通过kubelet进行查询 curl --cacert /etc/kubernetes/pki/ca.crt \ --cert /var/lib/kubelet/pki/kubelet-client-current.pem \ --key /var/lib/kubelet/pki/kubelet-client-current.pem \ -d - \ -H "Content-Type: application/json" \ -H Accept: applicat…...
Leetcode 3447. Assign Elements to Groups with Constraints
Leetcode 3447. Assign Elements to Groups with Constraints 1. 解题思路2. 代码实现 题目链接:3447. Assign Elements to Groups with Constraints 1. 解题思路 这一题的话思路上我是预先算出可能数字对应的element,然后只要一次query就行了。 而至…...
Ollama + AnythingLLM + Deepseek r1 实现本地知识库
1、Ollama:是一个开源的大型语言模型 (LLM)服务工具,旨在简化在本地运行大语言模型的过程,降低使用大语言模型的门槛。 2、AnythingLLM:是由Mintplex Labs Inc. 开发的一款全栈应用程序,旨在构建一个高效、可定制、…...
Prompt逆向工程:如何“骗“大模型吐露其Prompt?
提示词的“逆向工程”,让AI大语言模型帮你反推提示词 一、前言 在日常生活中,我们不时会遇到一些令人惊艳的文本,不论是一篇精彩绝伦的小说、一篇深入浅出的科普文章,还是一篇充满热情的音乐推荐,它们都能在我们的心…...
Deepseek-v3 / Dify api接入飞书机器人go程序
准备工作 开通了接收消息权限的飞书机器人,例如我希望用户跟飞书机器人私聊,就需要开通这个权限:读取用户发给机器人的单聊消息 im:message.p2p_msg:readonly准备好飞书机器人的API key 和Secretdeepseek-v3的api keysecret:http…...
【docker】Failed to allocate manager object, freezing:兼容兼容 cgroup v1 和 v2
参考大神让系统同时兼容 cgroup v1 和 v2 要解决你系统中只挂载了 cgroup v2 但需要兼容 cgroup v1 的问题,可以通过以下几步来使系统同时兼容 cgroup v1 和 cgroup v2。这样 Docker 和其他服务就可以正常工作了。步骤 1:更新 Grub 配置,启用兼容模式 编辑 GRUB 配置来启用同…...
详解策略模式
引言 实现一个目标往往有多种方式,比如从上海到北京,可以选择高铁、火车、飞机、自驾等等。同样实现一个功能我们可能也有多种方法,把这些方法封装为算法,根据不同的需求选择不同的算法(策略),让…...
2025影视泛目录站群程序设计_源码二次开发新版本无缓存刷新不变实现原理
1. 引言 本设站群程序计书旨在详细阐述苹果CMS泛目录的创新设计与实现,介绍无缓存刷新技术、数据统一化、局部URL控制及性能优化等核心功能,以提升网站访问速度和用户体验。 2. 技术概述 2.1 无缓存刷新技术 功能特点: 内容不变性&#x…...
【RabbitMQ】RabbitMQ的下载安装及使用
安装RabbitMQ 下载网站:https://www.rabbitmq.com/docs/install-windows 点击后,会直接定位到依赖介绍位置,告诉你需要安装Erlang 下载Erlang Erlang也是一种编程语言,只是比较小众,但其拥有极为出色的性能 这个网站是…...
