Maven的核心解压与配置
Maven的核心解压与配置
@
1. Maven 官网地址
首页:Maven – Welcome to Apache Maven(opens new window)

下载页面:
Maven – Download Apache Maven(opens new window)

下载链接:https://maven.apache.org/download.cgi
2. 解压Maven核心程序
和Tomcat 是一样的,将下载的安装包,解压便是下载了,需要注意的是:解压的路径不可以有中文,以及空格
核心程序压缩包:apache-maven-3.8.4-bin.zip,解压到非中文、没有空格的目录。例如:

3. 指定本地仓库
解压安装到指定要求的目录中以后,我们需要对 Maven进行一个配置。
而关于 Maven 的配置,都是在其中解压安装的 Maven 的conf/settings.xml 这个 xml 文件当中。该 settings.xml是 Maven的核心配置文件。基本上所有关于 Maven的配置都是在这个文件配置的。如下是:

这里我使用的是 Notepad++ 打开的,大家可以使用其他的,编译应用打开,不建议使用记事本打开,因为记事本,没有代码高亮,如何出错。

配置本地仓库:
所谓的本地仓库:就是一个关于 Maven的一些依赖的jar,war 等等的安装位置,类似于我们运用 Git 工具进行一个版本控制的本地仓库。
本地仓库默认值:用户家目录/.m2/repository。由于本地仓库的默认位置是在用户的家目录下,而家目录往往是在 C 盘,也就是系统盘。将来 Maven 仓库中 jar 包越来越多,仓库体积越来越大,可能会拖慢 C 盘运行速度,影响系统性能。所以建议将 Maven 的本地仓库放在其他盘符下。
对于:Maven的本地仓库的配置要运用的是:<localRepositoryXXX</localRepository> 这个标签,如下,我们可以看到,在Maven 当中的 settings.xml 配置文件当中是被其默认注释掉了。

我们只需要将其复制出来,并把其中注释去了,在其中配置好我们本地仓库的路径就可以了。如下:

上面配置的路径对于的文件不存在的话,等执行构建命令时 Maven 会自行创建出来的,当然,为了防止出错,什么权限不足等等问题,你也可以先创建出来,一般都是可以自行创建出来的。
注意: 该配置的本地仓库的路径,不可以有中文,也不可以有空格,要用全英文字母。
配置方式如下:
<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
| The path to the local repository maven will use to store artifacts.
|
| Default: ${user.home}/.m2/repository
<localRepository>/path/to/local/repo</localRepository>
-->
<!--配置 Maven的本地仓库-->
<!-- 这个目录可以等执行构建命令时 Mavnen 自行创建出来-->
<localRepository>G:\devData\maven-repository</localRepository>
本地仓库这个目录,我们手动创建一个空的目录即可。记住:一定要把 localRepository 标签从注释中拿出来。注意:本地仓库本身也需要使用一个非中文、没有空格的目录。
4. 配置阿里云提供的镜像仓库
配置好 Maven的本地仓库接下来就是,配置 Mavne 的镜像仓库了。
所谓的镜像仓库: 主要就是对于,我们访问国外的一些信息资源过慢,而本国对其信息资源进行一个拷贝。如果我们下载国外的资源速度比较慢的时候,我们可以通过找到其镜像仓库,通过本国的镜像仓库中找到其对于的资源,进行一个下载。
什么我们访问国外的资源比较慢:因为距离过远了,光缆可能走的是地下的,又走海上的等等,距离过远,还可能被各种环境因素影响到。
而我们的 Maven 下载的 jar 包资源,默认访问就是国外的中央仓库(注意:在Maven 当中,中央仓库就只有一个。),因为 Maven国外开发的吗?而国外网站速度很慢。所以这里,我们改成阿里云提供的镜像仓库,访问国内网站,可以让 Maven 下载 jar 包的时候速度更快。注意:这里我们改的只是为,中央仓库配置一个备用,并不是修改了中央仓库,中央仓库还是国外的,当中央仓库无法访问到的时候,走的,访问的就是我们配置的镜像仓库了。
配置Maven的镜像仓库需要使用到的标签是:<mirror>XXXX</mirror> 需要注意的一点就是:该标签是在:<mirrors></mirrors> 标签定义的。如下:Maven 默认是注释掉了的。

如下就是阿里云提供的镜像仓库。大家复制,粘贴过去就好了,注意该 标签是在 标签下的。
将下面 mirror 标签整体复制到 settings.xml 文件的 mirrors 标签的内部。
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>

5. 配置 Maven 工程的基础 JDK 版本
Maven 是由 java程序编写的,需要通过JDK编译,启动运行。
这里我们需要配置以下,Maven 运行编译的 JDK版本,尽量如自己安装的,JDK版本对应上就可以了。
如果按照默认配置运行,Java 工程使用的默认 JDK 版本是 1.5,而我们熟悉和常用的是 JDK 1.8 版本。修改配置的方式是:
使用 <profile>XXX</profile>标签进行配置。默认Maven是将其注释掉了,如下:

注意:该标签是在 内的,不要放错位置了如下:

<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>
6. 配置环境变量
Maven 是一个用 Java 语言开发的程序,它必须基于 JDK 来运行,所以,我们需要先将 JDK的环境变量配置好,这里我就不多说明了。因为这里我们只要将的是 Maven 。
我们可以先检查一下 java的环境变量是否存在问题:使用命令 java -version。 如下,我这里的 java 环境变量是没有问题的。

下面我们来配置:Maven 的环境变量:
点击系统变量,点击新建:


变量名: MAVEN_HOME
变量值: G:\dev\apache-maven-3.8.8
注意:这里的路径是 Maven 安装路径当中的 bin 目录的上一层。如下图:

后再配置 PATH



%MAVEN_HOME%\bin
配置好以后,注意要点击 三个确定 ,一个都不能少。
配置环境变量的规律:
XXX_HOME 通常指的都是 bin 目录的上一级目录。
PATH的配置一般都是再上次配置的 XXX_HOME 的变量名,加上两个% 百分号,以及bin 。比如%XXX_HOME%\bin。
测试,我们的Maven 是否安装成功:
打开 命令行窗口 Win + R, ——> cmd ,如下有版本信息显示,基本上就没有什么问题了。
mvn -v # mvn 表示的是 Maven的简写

7. 最后:感谢
该文章参考了,如下博主的分享。我们再此,真诚的感谢博主的技术的热情的分享。
感谢如下博主的分享
【1】:兵器|代码重工

Maven的核心解压与配置的更多相关文章
- Mysql 5.6 解压版配置方案
# For advice on how to change settings please see # http://dev.mysql.com/doc/refman/5.6/en/server-co ...
- MySQL解压版配置步骤
mysql-5.7.14-winx64\bin配置到Path中 在解压路径下复制my-default.ini,修改名称为my.ini 在my.ini添加如下 [mysqld] basedir=C:\\ ...
- mysql解压版配置
2. 解压MySQL压缩包 将以下载的MySQL压缩包解压到自定义目录下,我的解压目录是: "D:\Program Files\MySQL\mysql-5.6.13-win32" ...
- Tomcat解压版配置详解(Tomcat8示例)
注:请在JDK安装后操作以下内容 1. 下载Tomcat解压缩安装包 http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.0.45/bin/apac ...
- MySQL解压版配置步骤详细教程
解压mysql到D盘根目录 在解压路径下复制my-default.ini,修改名称为my.ini 在my.ini内容如下 [client]default-character-set=utf8 [mys ...
- can not create symbolic link HDFS解压自动配置lib报错。
如题,使用FusionInsight解压生成样例代码的时候报错,找不到解释.只猜测是权限问题.然后并没有仔细静心思考,心里杂念很多,很浮躁. 解决方法是“以管理员身份运行“. 想想高中:面对问题,不能 ...
- window环境mysql解压版配置
1.下载并解压 到官网下载mysql-5.5.10-win32.zip,然后将mysql解压到任意路径,如:C:\mysql-5.5.10-win32 2.设置环境变量 打开计算机->属性-&g ...
- Mysql解压版配置环境等
背景故事:安装版的mysql和我的本本有仇,最后一步老卡死 1.首先先把下载好的压缩包解压,如下图:
- mysql-5.7.14-winx64解压版配置
1.下载最新的MySQL文件并且解压 我的位置是 F:\mysql-5.7.14-winx64 2.F:\mysql-5.7.14-winx64\bin; 添加到环境变量-系统变量-PATH下 3.复 ...
- Maven使用详解
Maven使用详解 世间万物相生相克,今年本来的目标是主要研究asp.net mvc以及windows平台相关的DI, ORM框架,突然有一天想研究一个Java EE里面相应的框架都是怎么玩的,于是研 ...
随机推荐
- rust使用lazy_static对全局变量多线程并发读写示例
首先需要在项目依赖Cargo.toml添加lazy_static依赖项 [dependencies] lazy_static = "1.4.0" 示例代码如下: use lazy_ ...
- java读写txt
/** * 传入txt路径读取txt文件 * * @param txtPath * @return 返回读取到的内容 */ public String readTxt(String txtPath) ...
- Babel解决ES6不能被所有浏览器解析问题
一.简介 1.ES6的某些高级语法在浏览器环境甚至是Node.js环境中无法执行. 2.Babel是一个广泛使用的转码器,可以将ES6代码转为ES5代码,从而在现有环境执行执行. 二.安装Babel ...
- java代码输出控制台输出菱形
private static void rhombFuncation() { int row = 3; for (int i = 1; i <= row; i++) { for (int row ...
- python 处理国家标准行业编码(编码·门类·大类·中类·小类)
进度 今天完整地进行了行业维度的清洗分析,把行业代码根据国家标准清洗出格式为 "编码·门类·大类·中类·小类" 的数据格式 过程 1.先把国家标准编码转化为json数据 2.根 ...
- 使用OHOS SDK构建libjpeg-turbo
参照OHOS IDE和SDK的安装方法配置好开发环境. 从github下载源码. 执行如下命令: git clone --depth=1 https://github.com/libjpeg-turb ...
- HttpOnly的笔记
HttpOnly是什么 简单的说: HttpOnly是Cookie的属性: Web服务器通过为Cookie设置这个属性,告诉浏览器应当避免页面端的脚本访问对应Cookie的值,保证被Cookie承载的 ...
- 组合数学——Min-Max容斥
Min-Max 容斥,即 $$\max(S)=\sum_{T\in S,T\neq\emptyset}(-1)^{|T|-1}\min(T)$$ 接下来证明上面那个式子是对的.定义 \(S\) 中共有 ...
- 并发编程面试必备之ConcurrentHashMap源码解析
ConcurrentHashMap在我的面试生涯中,10次有8次是会被问到的,记得刚毕业那会,被问到ConcurrentHashMap源码的无助与苦涩,无奈只能网上找了一些教程,背一背,才算是蒙混过关 ...
- C# Lock的用法
当我们使用线程的时候,效率最高的方式当然是异步,即各个线程同时运行,其间不相互依赖和等待.但当不同的线程都需要访问某个资源的时候,就需要同步机制了,也就是说当对同一个资源进行读写的时候,我们要使该资源 ...