(2024.6.23)最新版MAVEN的安装和配置教程(超详细)

1.什么是MAVEN

        Maven是一个自动化构建工具,主要用于Java项目,它由Apache软件基金会维护。Maven能够自动化完成编译测试打包发布等构建过程,可以大大提高开发效率,保证项目的质量。

                              

下面我们从几个方面来介绍一下MAVEN的功能特性

1.项目管理工具
        Maven不仅仅是一个构建工具,它还是一个项目管理工具。它通过
项目对象模型(Project Object Model,POM)来管理项目的构建、报告和文档。
2.依赖管理
        Maven的一个核心功能是
依赖管理。它允许开发者声明项目所依赖的库(如jar文件),Maven会自动下载这些依赖,并管理它们的版本。这样可以确保项目在不同的环境中有一致的依赖,减少了因依赖问题导致的错误。
3.构建生命周期
        Maven定义了项目的
构建生命周期,包括清理编译测试打包集成测试验证部署等阶段。每个阶段都由插件来执行特定的任务。
4.插件机制
        Maven本身不执行构建的具体操作,而是通过
插件来完成。插件是Maven的核心扩展点,用户可以通过添加或自定义插件来扩展Maven的功能。
5.多模块项目管理
        Maven支持多模块项目。这意味着一个大的项目可以被拆分成多个模块,每个模块都有自己的POM文件。Maven能够处理模块间的依赖关系,并协调它们的构建顺序。
6.标准和约定优于配置
        Maven鼓励使用标准和约定来减少配置的工作量。例如,它有一套标准的
项目目录结构,如果遵循这些标准和约定,很多配置就可以省略,简化了项目的搭建过程。
7.集成和扩展性
        Maven可以与其他工具和系统集成,如持续集成服务器(如Jenkins)、问题跟踪系统等。同时,它也支持自定义插件来满足特定的构建需求。
8.中央仓库
        Maven使用
中央仓库来存储依赖库。当Maven需要下载依赖时,它会首先从中央仓库查找。此外,Maven还支持设置镜像仓库和本地仓库,以优化下载速度和提高可靠性。

2.MAVEN的安装

1.下载MAVEN

(1)点击MAVEN官网,如图:

2.点击Download,下载适合自己的版本:

Windows用户选   apache-maven-3.9.8-bin.zip 这个就行了

3.解压刚刚下载的zip包:

2.配置环境变量

1.打开刚刚解压完的zip文件:

复制 apache-maven-3.9.8-bin的路径,我的是:

D:\apache-maven-3.9.8-bin\apache-maven-3.9.8

2.打开环境变量设置:“此电脑”鼠标右键→“属性”→高级系统设置

                        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        

变量名填:

MAVEN_HOME

变量值是刚刚复制的路径(以你自己电脑的路径为准):

D:\apache-maven-3.9.8-bin\apache-maven-3.9.8

如图:

接着找到Path:

在②里填入:

%MAVEN_HOME%\bin

3.验证环境变量是否成功配置:

win+R运行cmd,输入mvn -version,如图所示则配置成功:

3.MAVEN的配置

1.配置本地仓库

本地仓库(Local Repository)在Maven中扮演着重要的角色,是Maven工作原理的一个关键部分
1. 缓存依赖:
   - 当第一次运行Maven命令来构建项目时,Maven会从远程仓库(如中央仓库)下载项目所依赖的库(jar文件)到本地仓库。这些依赖被缓存在本地仓库中,以便于未来的构建可以重用,不需要再次从远程仓库下载,节省时间。
2. 离线工作:
   - 如果没有网络连接或者远程仓库不可用,Maven可以从本地仓库获取依赖,可以在离线状态下构建项目。
3. 减少网络流量:
   - 由于依赖一旦下载就会存储在本地仓库中,因此在项目开发过程中,重复构建时不需要多次下载相同的依赖,减少网络流量和远程仓库的负载。
4. 自定义依赖管理:
   - 可以将自己的项目构件(如jar文件)安装到本地仓库中,这样其他项目就可以通过Maven依赖机制使用这些构件,方便了项目的共享和重用。
5. 版本控制:
   - 本地仓库会存储不同版本的依赖,可以轻松地在项目中切换依赖的版本,不用担心其他项目的干扰。
6. 提高构建速度:
   - 本地仓库通常位于本地硬盘上,访问速度远快于远程仓库,可以显著提高项目构建的速度。
8. 自定义仓库配置:
   - 可以配置多个本地仓库,例如,为不同的项目或不同的环境设置不同的本地仓库,以更好地管理依赖。

下面来详细介绍配置本地仓库的过程:

1.找到之前解压的MAVEN文件,新建一个 MAVEN—local repository 文件夹作为本地的仓库,如下图:

2.在 D:\apache-maven-3.9.8-bin\apache-maven-3.9.8 下找到conf文件夹,打开,找到settings.xml文件:

以记事本形式打开这个setting.xml文件,可以改成txt后缀再打开,改完记得改回xml后缀

3.找到 localRepository 节点,在注释外添加:

<localRepository>D:\apache-maven-3.9.8-bin\MAVEN—local repository</localRepository>

注意,<localRepository>这里填你自己刚刚新建的本地仓库文件路径</localRepository>

如图:

改完后再次确认:

2.配置阿里云服务器镜像

国外的服务器下载jar包很慢,所以我们需要将其改为国内的阿里云服务器

下面介绍修改步骤:

1.同样的,在之前这个 settings.xml  文件中找到 mirrors 节点


2.将下面的内容复制粘贴进去:

<!-- 阿里云仓库 -->
<mirror><id>alimaven</id><mirrorOf>central</mirrorOf><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>

如图:

3.配置JDK

1.同样的,在之前这个 settings.xml  文件中找到 profiles 节点:

2.将下面的内容复制粘贴进去:

<!-- java版本 --> 
<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>

如图:

保存退出

3.查看是否配置成功,win+R快捷键运行cmd,输入 mvn help:system 测试:

如果出现下载很多文件的页面,说明您配置成功啦!!!

如果您第一次执行 mvn help:system 命令,Maven相关工具会自动到Maven中央仓库下载缺失的或者Maven中央仓库更新的各种配置文件和类库(jar包)到Maven本地仓库中。
下载完各种文件后, mvn help:system 命令会打印出所有的Java系统属性和环境变量:

到这里,所有的配置就大功告成了!!!恭喜您

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/858043.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【嵌入式Linux】i.MX6ULL 时钟树——理论分析

文章目录 0. 时钟树结构0.1 参考手册 Chapter 18​: Clock Controller Module (CCM)0.2 时钟信号路径 1. 时钟源——晶振1.1 外部低频时钟 - CKIL1.1.1 CKIL 同步到 IPG_CLK 解释 1.2 外部高频时钟 - CKIH 和 内部振荡器1.3 总结1.4 缩写补充 2. PLL时钟2.1 i.MX6U 芯片 PLL 时…

八爪鱼现金流-025-工作的终极目标,不是为了成为更好的员工

工作的终极目标&#xff0c;不是为了成为更好的员工。 而是解放时间和收入自动化 打造自己的被动收入!!! 八爪鱼现金流 八爪鱼

Docker 如何支持 NVIDIA GPU

Docker 如何支持 GPU Docker 是一个强大的工具&#xff0c;可以帮助开发者构建、部署和运行应用程序。对于需要高性能计算的应用程序&#xff0c;例如机器学习、深度学习和科学计算&#xff0c;利用 GPU 可以大大提升计算效率。本文将详细介绍 Docker 如何支持 GPU 以及如何配…

CMMM Plus+ Calculus Update 超级游戏大作 游戏说明

资源链接 关卡编辑器 ◽️使用 WASD 移动视图。 ◽️LMB 放置单元格。 ◽️Space LMB 删除单元格。Ctrl Space LMB 删除所有相同类型的单元格。 ◽️Q / E 旋转单元格。 ◽️Z / X 在单元格类别之间切换。 ◽️键 1-9 快速选择单元格。 ◽️按 F 显示可拖动的图块。 ⌨️控…

微信小程序canvas2d频繁刷新图片时图片闪烁问题

问题&#xff1a;使用了拖动事件&#xff0c;需要频繁重绘canvas&#xff0c;导致图片闪烁。 原因&#xff1a;官方示例中&#xff0c;canvas2d需要手动加载图片&#xff0c;再在图片的onLoad函数绘制图片&#xff0c;延迟太高&#xff0c;导致刷新时图片闪烁。 解决&#xff1…

会声会影2024永久破解和谐版下载 包含激活码序列号

亲爱的创作伙伴们&#xff0c;今天我要分享一个让我的影视编辑生活大放异彩的神器——会声会影2024破解版本&#xff01;&#x1f389;&#x1f31f; &#x1f308;**功能全面升级**&#xff1a;作为一款专业的视频编辑软件&#xff0c;会声会影2024破解版本不仅继承了之前版本…

Springboot应用的信创适配

CentOS7在2024.6.30停止维护后&#xff0c;可替代的Linux操作系统-CSDN博客 全面国产化之路-信创-CSDN博客 信创适配评测-CSDN博客 Springboot应用的信创适配 Springboot应用的信创适配&#xff0c;如上图所示需要适配的很多&#xff0c;从硬件、操作系统、中间件&#xff08…

人工智能在数字病理切片虚拟染色以及染色标准化领域的研究进展|顶刊速递·24-06-23

小罗碎碎念 本期推文主题&#xff1a;人工智能在数字病理切片虚拟染色以及染色标准化领域的研究进展 这一期的推文是我发自内心觉得为数不多&#xff0c;特别宝贵的一篇推文&#xff0c;原因很简单——可参考的文献相对较少&方向非常具有研究意义&现在不卷。 数字病理…

TCP如何做到可靠传输

TCP如何做到可靠传输 1. 连接建立&#xff08;三次握手&#xff09;2. 数据传输2.1 序列号和确认号2.2 窗口机制 3. 流量控制4. 拥塞控制5. 错误检测与恢复5.1 校验和5.2 重传机制 6. 连接终止&#xff08;四次挥手&#xff09;示例 TCP&#xff08;传输控制协议&#xff09;通…

【ajax核心04】利用async、await解决显式promise链问题

一&#xff1a;async函数与await关键字 async function 声明创建一个绑定到给定名称的新异步函数。函数体内允许使用 await 关键字&#xff0c;这使得我们可以更简洁地编写基于 promise 的异步代码&#xff0c;并且避免了显式地配置 promise 链的需要。 function resolveAfte…

Vue3+TypeScript项目实战——打造雨雪交加的智慧城市

个人简介 &#x1f440;个人主页&#xff1a; 前端杂货铺 ⚡开源项目&#xff1a; rich-vue3 &#xff08;基于 Vue3 TS Pinia Element Plus Spring全家桶 MySQL&#xff09; &#x1f64b;‍♂️学习方向&#xff1a; 主攻前端方向&#xff0c;正逐渐往全干发展 &#x1…

三国之家网站的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;管理员管理&#xff0c;论坛管理&#xff0c;公告管理&#xff0c;三国视频管理&#xff0c;基础数据管理&#xff0c;三国图文管理 前台账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#…

VS2010中负载测试注意问题

目前在项目开发中&#xff0c;通常会使用DBHelper类&#xff0c;对数据库操作进行封装&#xff0c;如果使用的静态数据库连接对象&#xff0c;在负载测试中将出现连接已打开或未关闭的问题&#xff0c;因为静态连接变量只赋值一次后就常驻内存。这样就导致了只有一个连接&#…

从工具产品体验对比spark、hadoop、flink

作为一名大数据开发&#xff0c;从工具产品的角度&#xff0c;对比一下大数据工具最常使用的框架spark、hadoop和flink。工具无关好坏&#xff0c;但人的喜欢有偏好。 目录 评价标准1 效率2 用户体验分析从用户的维度来看从市场的维度来看从产品的维度来看 3 用户体验的基本原则…

《人生苦短,我用python·四》pybind11多场景使用

引言 Pybind11作为一个强大的工具&#xff0c;不仅可以轻松地将简单的C函数和类暴露给Python&#xff0c;还可以处理更复杂的场景&#xff0c;比如支持C标准库容器、处理C异常、以及自定义数据结构的转换。本文将深入介绍Pybind11的一些高级用法&#xff0c;帮助你在实际项目中…

将WIN10的wifi上网分享给以太网接口

目录 打开网络设置设置属性点这里的设置将wlan主机的以太网接口IP设为自动获取 如果连接不成功&#xff0c;拔网线重连一次 打开网络设置 设置属性 点这里的设置 将wlan主机的以太网接口IP设为自动获取 如果连接不成功&#xff0c;拔网线重连一次

IOS开发学习日记(十六)

目录 App间的唤起和通信 App跳转 通过Scheme唤起其他App Universal Link 组件化 App间的唤起和通信 App跳转 使用URL Scheme支持App启动、跳转及参数传递 分享 / 登陆 / 拉起App Store等 设置URL Type 在UIApplication中处理参数和业务逻辑 -(BOOL)application:(UIApp…

Vue73-命名路由

一、路由的name属性 二、小结

【栈与队列】有效的括号

题目&#xff1a;给定一个只包括 (&#xff0c;)&#xff0c;{&#xff0c;}&#xff0c;[&#xff0c;] 的字符串 s &#xff0c;判断字符串是否有效。 有效字符串需满足&#xff1a; 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应…

Kafka 集群状态监测、故障切换机制原理

Kafka 集群状态监测、故障切换机制原理 Kafka 的状态监测、故障检测和数据变化的实现方式确实依赖于 ZooKeeper 进行协调和管理,但具体机 制包括 ZooKeeper 监听和 Kafka 内部逻辑的结合。以下是详细说明: 1. ZooKeeper 监听机制 Kafka 使用 ZooKeeper 的监听机制来监测状…