一文读懂Maven的安装与配置

一、前言【可忽略】

Maven本质是一个项目管理工具,类似于JDK是java开发工具。

我们需要管理什么呢?首先各种各样的依赖,比如SpringFramwork、Mybatis。

简单点做,我们新建个目录,就能管理这些jar包。然而,缺乏统一管理,很可能会导致混乱,造成莫名bug,比如库中同时有Mybatis1.0版本和2.0版本,这时候引用就会出错。

Maven的重要功能之一,就是统一管理这些依赖,避免浪费大量时间在这些乱七八糟的事上。

此外,Maven定义了标准的开发结构,方便把握开发流程。

其核心有3部分,main目录、test目录、pom.xml文件【target是javac编译后的二进制文件,不属于Maven讲解内容】

假设,我们一套标准开发流程是编码-》调试-》测试-》部署。【仅以后端】

第一步,编码可能包括很多流程,但核心一般仅2步:加载连接数据库、编写处理代码。

我们不可能自己编写数据库连接软件,然后写SQL语句写代码,这已经有人写好了。

此时,我们可以直接导入mysql依赖,就能方便地连接数据库。

导入mybatis,就能方便地操作数据库。

Test测试目录下可以测试一些代码,怎么做?

导入junit依赖,就能用一些简单的注解,进行测试。

这些依赖,我们只需在pom.xml文件中,添加相关坐标,即可自动下载,这就很简单了。

二、Maven的下载与安装

第一步,下载安装

Maven的下载,需要到以下网站、选择第二个bin.zip下载:

https://maven.apache.org/download.cgixhttps://maven.apache.org/download.cgi

最后得到的是一个压缩包apache-maven-3.9.6-bin.zip,最后解压缩,就能得到apache-maven-3.9.6的文件夹,可以随便移动到一个目录下。【建议不要中文】

这个就是maven了,这时算是安装完了,但是还需要配置。

第二步,配置环境变量

点击win,在搜索框输入"huan",一般会跳出"编辑系统环境变量",点击。

接着,点击"环境变量(N)",一般会出现两个部分:用户变量和系统变量,点击用户变量的path。【在windows的另外版本,可能无法点击,此时在最后加上】

点击"新建",在最后一栏输入你安装的maven路径【一直到bin】

比如我是"D:\Maven\apache-maven-3.3.9\bin",然后一路确定即可【不要忘记确认】

快捷键win+R,输入"cmd"命令,打开。

输入"mvn -v"【n与-之间有空格】,只要有显示,就说明安装完成。

三、配置Maven本地仓库和国内镜像

maven安装完成后,需要配置本地仓库,和国内镜像【因为默认从外国网站下载,速度非常慢】

为什么要配本地仓库?我们已知maven可以管理依赖,那它统一起来的依赖在哪呢?就要放在仓库里。

本地仓库是什么呢?其实就是一个目录。

所以,在maven同级目录下,建一个目录(文件夹)"D:\Maven\repository"【不要放在apache-maven中,一般不会出错,但是如果你忘了,想更新一些数据,就可能不敢删除这里面的数据】

第一步,配置本地仓库

打开maven的conf目录,打开其中的setting.xml文件。【我的conf目录路径是"D:\Maven\apache-maven-3.3.9\conf"】

打开后,输入以下内容【仓库要改成,你之前的目录名】:

<localRepository>D:\Maven\repository</localRepository>

保存,至此,本地仓库配置结束。

第二步,配置国内镜像

依旧是setting文件中,首先找到<mirrors>标签,【没有需要自己加。找一下,有时可能被注释或者干脆没有。】

在mirrors标签中,加入如下语句【去除前后两个mirrors】:

  <mirrors>
	 <mirror>
	   <id>aliyun</id>
	   <mirrorOf>*</mirrorOf>
	   <name>Aliyun Maven Repository</name>
	   <url>https://maven.aliyun.com/repository/public</url>
	 </mirror>
  </mirrors>

千万要注意,不要把标签插入其它标签里,一定报错。

到此,maven的安装和配置已经完成,接着重要的是使用maven进行依赖管理,其实也就是在pom文件下管理依赖,在此不赘叙。

我是蚊子码农,如有补充,欢迎在评论区留言。个人的知识体系可能没有那么完善,希望各位多多指正,谢谢大家。

相关推荐
代码之光_198018 分钟前
保障性住房管理:SpringBoot技术优势分析
java·spring boot·后端
ajsbxi23 分钟前
苍穹外卖学习记录
java·笔记·后端·学习·nginx·spring·servlet
StayInLove42 分钟前
G1垃圾回收器日志详解
java·开发语言
对许1 小时前
SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder“
java·log4j
无尽的大道1 小时前
Java字符串深度解析:String的实现、常量池与性能优化
java·开发语言·性能优化
小鑫记得努力1 小时前
Java类和对象(下篇)
java
binishuaio1 小时前
Java 第11天 (git版本控制器基础用法)
java·开发语言·git
zz.YE1 小时前
【Java SE】StringBuffer
java·开发语言
老友@1 小时前
aspose如何获取PPT放映页“切换”的“持续时间”值
java·powerpoint·aspose
wrx繁星点点1 小时前
状态模式(State Pattern)详解
java·开发语言·ui·设计模式·状态模式