105 lines
4.5 KiB
Markdown
105 lines
4.5 KiB
Markdown
---
|
||
title: Maven 的相关配置
|
||
date: 2020-09-29 20:51:38
|
||
tags:
|
||
- 开发工具
|
||
- Maven
|
||
categories:
|
||
- 开发工具
|
||
---
|
||
> Apache Maven,是一个软件(特别是 Java 软件)项目管理及自动构建工具,由 Apache 软件基金会所提供。基于项目对象模型(缩写:POM)概念,Maven 利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤。
|
||
>
|
||
> Maven 也可被用于构建和管理各种项目,例如 C#,Ruby,Scala 和其他语言编写的项目。Maven 曾是 Jakarta 项目的子项目,现为由 Apache 软件基金会主持的独立 Apache 项目。
|
||
>
|
||
> <p style="text-align:right;">——《维基百科》</p>
|
||
|
||
由于众所周知的原因,Maven 下载东西的时候总会特别慢,直到失败。下面列出几个常见配置:
|
||
|
||
## 一、将 archetypeCatalog 参数设为 internal
|
||
|
||
在 maven 的 VM Options 加上 -DarchetypeCatalog=internal 参数。
|
||
|
||
- IntelliJ IDEA : 设置中的 **Build, Execution, Deployment** -> **Build Tools** -> **Maven** -> **Runner** 的 VM Options 中输入 `-DarchetypeCatalog=internal`。
|
||
- VS Code : 设置中的 **扩展** -> **Maven for Java** -> Maven > Executable: **Options** 中输入 `-DarchetypeCatalog=internal`。
|
||
|
||
---
|
||
|
||
## 二、配置阿里云镜像
|
||
|
||
### 1. 为单个项目配置阿里云镜像
|
||
|
||
我们可以在项目的 pom.xml 文件的 project 节点中为该项目单独配置阿里云镜像,如下所示:
|
||
|
||
```xml
|
||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
|
||
https://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||
...
|
||
<repositories>
|
||
<repository>
|
||
<id>aliyun</id>
|
||
<url>https://maven.aliyun.com/repository/public</url>
|
||
<releases>
|
||
<enabled>true</enabled>
|
||
</releases>
|
||
<snapshots>
|
||
<enabled>false</enabled>
|
||
</snapshots>
|
||
</repository>
|
||
</repositories>
|
||
<pluginRepositories>
|
||
<pluginRepository>
|
||
<id>aliyun-plugin</id>
|
||
<url>https://maven.aliyun.com/repository/public</url>
|
||
<releases>
|
||
<enabled>true</enabled>
|
||
</releases>
|
||
<snapshots>
|
||
<enabled>false</enabled>
|
||
</snapshots>
|
||
</pluginRepository>
|
||
</pluginRepositories>
|
||
...
|
||
</project>
|
||
```
|
||
|
||
这样,当我们从 git 上拉取项目之后,就可以直接使用阿里云的镜像。
|
||
|
||
> 注意:别忘了 pluginRepositories 节点的配置。网上不少文章只介绍了 repositories 的配置,但是这样可能会出现依赖包从阿里云下载,而 Maven 插件依旧从 repo.maven.apache.org 下载的情况,最终下载缓慢甚至报错。
|
||
|
||
### 2. 修改 Maven 的配置文件
|
||
|
||
我们还可以修改 Maven 安装目录下 `conf` 文件夹中的 `settings.xml` 文件,找到其中的 `mirrors` 节点,在其中添加如下配置:
|
||
|
||
```xml
|
||
<mirror>
|
||
<id>alimaven</id>
|
||
<mirrorOf>*,!jeecg,!jeecg-snapshots</mirrorOf>
|
||
<name>aliyun maven</name>
|
||
<url>https://maven.aliyun.com/nexus/content/groups/public/</url>
|
||
</mirror>
|
||
```
|
||
|
||
> 一些软件默认会去使用 `${用户文件夹}/.m2/settings.xml` 配置文件,我们可以手动指定 settings.xml 文件的路径。我个人的做法是干脆将修改后的 `settings.xml` 拷贝一份到 .m2 文件夹中,这样不管哪个软件从哪里加载配置文件,都是一样的内容。
|
||
|
||
---
|
||
|
||
## 三、本地仓库
|
||
|
||
Maven 默认的本地仓库位于 `个人文件夹\.m2\repository`,比如 `C:\Users\zhouxy\.m2\repository`、`~\.m2\repository`,这个我一般就不去修改了。总之下载过的依赖都会放在这里,而每次创建、打开项目,Maven 都会先从这里寻找依赖。你也可以在 settings.xml 中修改这个路径。
|
||
|
||
在 `settings` 的开始标签下面就有被注释的内容说明如何配置,也就是在 `settings` 节点中添加如下代码:
|
||
|
||
```xml
|
||
<localRepository>D:/ZhouXY/.m2/repository</localRepository>
|
||
```
|
||
|
||
这样 maven 就会把 `D:/ZhouXY/.m2/repository` 这个目录当成本地仓库,你可以替换成你自己的文件夹。
|
||
|
||
## 随便说点什么
|
||
|
||
好久没更新博客了,最近在学 Spring,由于有点赶时间,所以笔记没有整理得很整齐,示例程序也零零散散,等有时间整理好了,再一并发布吧。
|
||
|
||
另外,博客换了个主题,有些东西还没配置好,就先这样将就吧。
|